Судя по 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(){
}