Qt GUI--界面编程基础
认识设计师界面--每个窗口的功能及用法
在UI设计师界面设计的属性会被QTwidget设计在这里面
拖动拖放试试看
属性是根据基础的父类从上到下排序的
编辑和信号槽模式
核心--信号槽的理解与应用(这里比较粗糙)
QT和其他GUI框架最大的区别
红灯是信号,看到红灯就走的行为就是槽
查询帮助文档,在文件中以及有对应的类,F1查看其可帮助文档
一个红绿灯可以发出三种颜色信号,接受者是人可以做出三种不同的行为,可以有很多人看到红绿灯,同样人也可以发出不同的信号给其他人
为了方便可以建立索引
查找要使用索引
第五个参数多线程会介绍
信号函数体可以为空,只起到一个通知的作用 自带信号不需要声明,自建信号需要声明,connect接收者可以是信号转接给主窗口或者控件在下一个connect发送者中使用,emit是QT框架提供的关键字,用了实现信号与信号之间的转发
根据创建的控件需要实现的代码逻辑管理明确发出者和接受者的对象,事先使用ui-》对象或者this主窗口,接受者一般是this主窗口
连接信号槽--三大写法
功能:点击的时候会触发自建信号
第一种写法
点击的时候会发送信号给发送者使用
on_pushButton_clicked() 函数是一个槽函数,用于处理按钮点击事件。在你的代码中,它是通过按钮的点击信号来触发的。
当你在界面上点击按钮(pushButton)时,按钮会发出一个点击信号(clicked()),然后这个信号会被连接到 on_pushButton_clicked() 槽函数,从而触发了 on_pushButton_clicked() 函数的执行。
在你提供的代码中,on_pushButton_clicked() 函数内部使用 emit 关键字发出了一个名为 printLog 的信号,并传递了整数参数1。
通过调用 connect 函数,将发送信号的对象的信号与接收信号的对象的槽函数进行了连接。具体地说,这行代码的作用是将 this 对象的 printLog 信号与 this 对象的 onPrintLog 槽函数进行了连接。
当发出 printLog 信号时,与之连接的 onPrintLog 槽函数会被触发执行。
第二种写法
信号和槽的宏改成函数指针,前面有个取地址符,简单易懂就是类+方法
第三种写法
宏的错误在编译期间无法发现错误,运行时才可以,所以函数指针更加安全d
但是
在使用函数指针的是有由于valuechange有重载版本编译器无法辨别所以需要强制转换,宏可以直接选择重载哪个重载版本
连接信号槽--自动绑定
发送者的信号和接受者的槽
连线后会自动被添加在导入的头文件里
类似6-3这种
添加这个槽后
再执行槽需要执行的
函数就行了
这种情况会在头文件出现自动绑定的声明
如果改变对象的名称也需要改变槽函数的名称
本章小结