大家好,今天主要和大家聊一聊,如何学习QT中的控件使用方法。
目录
第一:QT控件基本简介
第二:QPushButton使用方法
第三:QTableWidget简介
第四:最终运行效果
第一:QT控件基本简介
老子曾说:“天下难事,必做于易;天下大事,必做于细”。再复杂的项目,都是有一个个小小的部分组成。QT的窗口部件,其中每种窗口部件都选取一个作为例子讲解它们的用法。
在 Qt 里,最常用使用的控件就是按钮了,有了按钮,我们就可以点击,从而响应事件,达 到人机交互的效果。不管是嵌入式或者 PC 端,界面交互,少不了按钮。
第二:QPushButton使用方法
利用窗口换肤,通过单击不同的按钮,改变窗口的颜色。如何完成一个项目,在头文件“mainwindow.h”具体代码如下:
#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include <QMainWindow>
/* 引入 QPushButton 类 */
#include <QPushButton>
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
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简介
QTableWidget 继承 QTableView。QTableWidget 类提供了一个带有默认模型的基于项的表视 图。
本示例使用一个TableWidget,绘制一个表格,同时修改项的标题,在表格里可以直接通过双击进行编辑项里的内容,也可以删除项里面的内容。
#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include <QMainWindow>
#include <QTableWidget>
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
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 <QString> 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()
{
}
第四:最终运行效果
程序编译运行的结果如下。双击表格中的项,可修改表格的内容,同时也可以删除内容等。