简介
对于界面新手而言,想要玩转qt还是需要多加磨炼的,为便于学习,特开本栏,在后期学习中,也会不断更新。
先看下新建完项目后会有哪些文件:在这里,新建一个名为qt
的项目,生成项目中包含的文件如图所示:
-
qt.ui
为界面所在的文件 -
qt.h
为头文件 -
qt.cpp
为函数实现文件 -
main.cpp
为主函数
从文件构造来看,与C/C++
并没有太多的区别,老实说,确实也没有太多的区别,重点在于如何实现qt.ui中的组件与qt.h(cpp)的代码关联在一起
,计算器是一个比较经典的例子,所以,就从它开始,作为qt
学习的Hello World
。
qt.ui组件添加
双击qt.ui
,进入设置界面,如下图所示:
要想做一个界面,首先要考虑功能,而后由功能反推结构,作为一个简单的加法计算器,你需要能手动输入加数
与被加数
,然后,可以显示和
。
输入加数
与被加数
,是一个input
的过程,所以,该插件需要在Input Widgets
目录下找:
选择的插件类型为Spin Box
(其余插件会在后续学习中应用)
和
只是一个输出,是可以手动操作与更改的,所以,需要再Display Widgets
目录下找:
由于是显示内容,所以,选择Text Browser
即可。至于其余的显示,用Label
就可以了。
在添加这些组件后,为便于操作,且让没一个组件都对应一个具有实际意义的变量,需要重命名一下:
qt.h(cpp)代码实现
作为动态加法计算器,最突出的特点就是,不管你修改哪个值,都会实时更新结果,而且,同一时间,你能且仅能操作其中一个(被)加数
,所以,我们要在这里添加两个函数,其功能为,如果修改的为加数
,那就将修改后的数值与被加数
进行计算,反之,就是与加数
进行计算,实现函数为:
//qt.h中添加函数
void add1_valueChanged(int value);
void add2_valueChanged(int value);
//qt.cpp实现函数
//result为组件`和`的名字,也就是说,`组件名`可作为类ui的变量
void qt::add1_valueChanged(int value)
{
ui.result->setText(QString::number(value + ui.add2->value()));
}
void qt::add2_valueChanged(int value)
{
ui.result->setText(QString::number(value + ui.add1->value()));
}
截止与此,函数方面已经基本实现功能了,下一步就是要将界面与代码进行关联:
信号/槽链接
点击编辑信号/槽功能,个人理解,这就是个功能连接,将该组件
的操作连接到相关函数上,也可以用个button
进行操作。
按住鼠标左键,做如图操作:
弹出配置链接窗口,并链接上相关函数:
完成上述操作后,就可以进行编译并运行了。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。