标签:项目 message ttext dex namespace cli row def style
简言:listview 无论在mfc中还是在Qt中应用是极其广泛的,本节简单进行Qlistview在Qt中操作。
目标:QlistView中插入一段数据,根据点击的相应顺序,弹出列表中的项目。
1 #ifndef MAINWINDOW_H
2 #define MAINWINDOW_H
3
4 #include <QMainWindow>
5 #include <QStringListModel>
6 #include <QStandardItemModel>
7 #include <QModelIndex>
8
9 namespace Ui {
10 class MainWindow;
11 }
12
13 class MainWindow : public QMainWindow
14 {
15 Q_OBJECT
16
17 public:
18 explicit MainWindow(QWidget *parent = 0);
19 ~MainWindow();
20
21 private:
22 Ui::MainWindow *ui;
23
24 public:
25 QStringListModel *Model;
26 QStandardItemModel *ItemModel;
27 void init();
28
29 private slots:
30 void showClick(QModelIndex index);
31 };
32
33 #endif // MAINWINDOW_H
1 #include "mainwindow.h"
2 #include "ui_mainwindow.h"
3 #include <QMessageBox>
4
5 MainWindow::MainWindow(QWidget *parent) :
6 QMainWindow(parent),
7 ui(new Ui::MainWindow)
8 {
9 ui->setupUi(this);
10 init();
11 }
12
13 void MainWindow::init()
14 {
15 // QStringList strlist;
16 // strlist<<"A"<<"B"<<"C"<<"D";
17 // Model = new QStringListModel(strlist);
18 // ui->listView->setModel(Model);
19 // ui->listView->setModel(Model);
20
21 ItemModel = new QStandardItemModel(this);
22
23 QStringList strList;
24 strList.append("A");
25 strList.append("B");
26 strList.append("C");
27 strList.append("D");
28 strList.append("E");
29 strList.append("F");
30 strList.append("G");
31
32 int nCount = strList.size();
33 for(int i = 0; i < nCount; i++)
34 {
35 QString string = static_cast<QString>(strList.at(i));
36 QStandardItem *item = new QStandardItem(string);
37 ItemModel->appendRow(item);
38 }
39 ui->listView->setModel(ItemModel);
40 ui->listView->setFixedSize(200,300);
41
42 connect(ui->listView,SIGNAL(clicked(QModelIndex)),this,SLOT(showClick(QModelIndex)));
43 }
44
45 void MainWindow::showClick(QModelIndex index)
46 {
47 QString strTemp;
48 strTemp = index.data().toString();
49
50 QMessageBox msg;
51 msg.setText(strTemp);
52 msg.exec();
53
54
55 }
56 MainWindow::~MainWindow()
57 {
58 delete ui;
59 }
实现效果:
总结:此为Qlistview在Qt应用中的简单使用
标签:项目 message ttext dex namespace cli row def style
原文地址:https://www.cnblogs.com/ybqjymy/p/14592326.html