作者:四只猪1984 | 来源:互联网 | 2023-09-25 17:35
大家好,今天主要和大家聊一聊,如何学习QT中的控件使用方法。
目录
第一:QT控件基本简介
第二:QPushButton使用方法
第三:QTableWidget简介
第四:最终运行效果
第一:QT控件基本简介
老子曾说:“天下难事,必做于易;天下大事,必做于细”。再复杂的项目,都是有一个个小小的部分组成。QT的窗口部件,其中每种窗口部件都选取一个作为例子讲解它们的用法。
在 Qt 里,最常用使用的控件就是按钮了,有了按钮,我们就可以点击,从而响应事件,达 到人机交互的效果。不管是嵌入式或者 PC 端,界面交互,少不了按钮。
利用窗口换肤,通过单击不同的按钮,改变窗口的颜色。如何完成一个项目,在头文件“mainwindow.h”具体代码如下:
#ifndef MAINWINDOW_H
#define MAINWINDOW_H#include
/* 引入 QPushButton 类 */
#include class MainWindow : public QMainWindow
{Q_OBJECTpublic:MainWindow(QWidget *parent = nullptr);~MainWindow();private:/* 声明一个 QPushButton 对象 pushButton1 */QPushButton *pushButton1;/* 声明一个 QPushButton 对象 pushButton2 */QPushButton *pushButton2;private slots:/* 声明对象 pushButton1 的槽函数 */void pushButton1_Clicked();/* 声明对象 pushButton2 的槽函数 */void pushButton2_Clicked();
};
#endif // MAINWINDOW_H
QTableWidget 继承 QTableView。QTableWidget 类提供了一个带有默认模型的基于项的表视 图。
本示例使用一个TableWidget,绘制一个表格,同时修改项的标题,在表格里可以直接通过双击进行编辑项里的内容,也可以删除项里面的内容。
#ifndef MAINWINDOW_H
#define MAINWINDOW_H#include #include class MainWindow : public QMainWindow{Q_OBJECTpublic:MainWindow(QWidget *parent = nullptr);~MainWindow();private:/* QTabelWidget 表格 */QTableWidget *tableWidget;/* QTabelWidgetItem 表格数据(项) */QTableWidgetItem *tableWidgetItem[4];};
#endif // MAINWINDOW_H
在源文件"mainwindow.cpp"具体代码如下:
#include "mainwindow.h"MainWindow::MainWindow(QWidget *parent)
: QMainWindow(parent){/* 设置主窗体的大小与位置 */this->setGeometry(0, 0, 800, 480);/* 实例化 */tableWidget = new QTableWidget(this);/* 设置 tableWidget 表居中 */setCentralWidget(tableWidget);/* 设置列数 */tableWidget->setColumnCount(2);/* 设置行数 */tableWidget->setRowCount(2);/* 使用标签设置水平标题标签 */tableWidget->setHorizontalHeaderLabels(QStringList()<<"姓名"<<"性别");/* 字符串类型链表 */QList strList;strList<<"小明"<<"小红"<<"男"<<"女";for (int i = 0; i <4; i++) {/* 实例化 */tableWidgetItem[i] = new QTableWidgetItem(strList[i]);/* 设置文本居中对齐 */tableWidgetItem[i]->setTextAlignment(Qt::AlignCenter);
}/* 插入数据,表的 index 就是一个二维数组数据 */tableWidget->setItem(0, 0, tableWidgetItem[0]);tableWidget->setItem(1, 0, tableWidgetItem[1]);tableWidget->setItem(0, 1, tableWidgetItem[2]);tableWidget->setItem(1, 1, tableWidgetItem[3]);}MainWindow::~MainWindow(){}
第四:最终运行效果
程序编译运行的结果如下。双击表格中的项,可修改表格的内容,同时也可以删除内容等。