crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )


  Ответ в не работает clicked в QAbstractItemView
Введите ваше имя
Подтвердите код

Введите в поле код из 6 символов, отображенных в виде изображения. Если вы не можете прочитать код с изображения, нажмите на изображение для генерации нового кода.
Теги
Выровнять по центру
Ссылка на тему
Ссылка на сообщение
Скрытый текст
Сокращение
Код с подсветкой
Offtopic
 
Удалить форматирование
Спец. элементы
Шрифт
Размер
 
Цвет шрифта
 
Отменить ввод
Вернуть ввод
Полужирный
Курсив
Подчеркнутый
 
 
Смайлики
Вставить изображение
Вставить адрес электронной почты
Цитата
Код
Раскрывающийся текст
 
Увеличить отступ
По левому краю
По центру
По правому краю
Вставить список
Вставить список

Опции сообщения
 Включить смайлы?
Иконки сообщения
(Опционально)
                                
                                
  [ Без иконки ]
 


Последние 10 сообщений [ в обратном порядке ]
Litkevich Yuriy Дата 12.2.2011, 12:40
 
Цитата(light @ 12.2.2011, 13:08) *
плохо что ошибки то не выдавало
это ошибка обнаруживается метаобъектной системой. Добавь в pro-файл строчку
CONFIG += console

тогда при запущенном приложении появится консоль, в которую метообъектная система Qt будет печатать сообщения об ошибке.
light Дата 12.2.2011, 11:08
  упс извиняюсь , ошибся в имени функции tableViewClicked

плохо что ошибки то не выдавало
light Дата 11.2.2011, 20:16
  не срабатывает сигнал clicked у QAbstractItemView.
Судя по Qt assistant правильно использую, но ни у tableView ни у ListView не срабатывает, вот программа с ListView

test.h
#ifndef TEST_H
#define TEST_H

#include <QtGui/QMainWindow>
#include "ui_test.h"
#include <qstandarditemmodel.h>

class test : public QMainWindow {
    Q_OBJECT

    public:
        test(QWidget *parent = 0);
        ~test();
        QStandardItemModel *tableViewModel;
    public slots:
        void tableViewClicked(const QModelIndex & indexS);

    private:
        Ui::testClass ui;
};

#endif // TEST_H


test.cpp
#include "test.h"
#include <qmessagebox.h>

test::test(QWidget *parent) :
    QMainWindow(parent){
    ui.setupUi(this);
    tableViewModel = new QStandardItemModel();
    ui.listView->setModel(tableViewModel);
    tableViewModel->appendRow(new QStandardItem("one row"));
    tableViewModel->appendRow(new QStandardItem("two row"));
    connect(ui.listView, SIGNAL(clicked(const QModelIndex &)),this,
            SLOT(tableViewClick(const QModelIndex &)));


}
void test::tableViewClicked(const QModelIndex &indexS){
    QString searchIndex = tableViewModel->itemFromIndex(
            ui.listView->selectionModel()->selectedIndexes().at(0))->text();
    QMessageBox::warning(this, "AAAAAAAAAA", searchIndex, 0, 0, 0);
}
test::~test(){

}


Просмотр темы полностью (откроется в новом окне)
RSS Рейтинг@Mail.ru Текстовая версия Сейчас: 10.7.2025, 17:21