Qt之旅(四)

44 阅读1分钟

这两天学习了Qt的信号与槽以及它的基本控件。

1. Qt信号与槽机制

信号就是在特定情况下被发射的事件,而槽就是对信号响应的函数。两者通过QObject::connect()函数实现,在实际应用中,可以省略前面的限定符QObject。

private:
    //声明一个QPushButton对象pushButton1
    QPushButton *pushButton1;
    
private slots:
    //声明对象pushButton1的槽函数
    void pushButton1_Clicked();
    
    .....
    
    
    //信号槽连接
    connect(pushButton1, SIGNAL(clicked()), this, SLOT(pushButton1_Clicked()));

上面例子中槽连接的作用是将pushButton按钮的clicked()信号和窗体的槽函数pushButton1_Clicked()相关联。

需要注意的是,一个信号可以和多个槽函数相关联,多个信号也可以连接同一个槽。

1.1 在项目中创建信号和槽

1.1.1 创建信号

只需要在mainwindow.h中声明信号就行,不需要定义,不需要public等关键字修饰,如:

image.png

1.1.2 创建槽

在mainwindow.h中声明槽,在mainwindow.cpp中实现槽的定义

image.png

image.png

1.2 连接信号和槽

image.png

2. 在Qt Creator中添加资源图片和qss文件

image.png

image.png

image.png

image.png

保存后即可在左侧栏看到添加的资源图片。

3. Qt控件

Qt控件的类型非常多,这两天看了输入窗口部件、显示窗口部件、布局管理、空间间隔等等,等后面学习项目的时候再用吧。。😶