Qt初体验(一)

前言

  此篇记录结对编程中有关Qt的知识,以及遇到的问题和解决方案。

环境配置

  这里我用的是Qt+VS2017

  有关环境的搭建问题可以参考https://blog.csdn.net/weixin_38976310/article/details/78325636?locationNum=5&fps=1

图形界面设计

  本来用c++设计界面是一件比较麻烦的事情,但是在有了qt之后就变得非常简单了(当然要做的很好看还是需要代码撸的)

  首先对项目的组成介绍一下,一般项目中有三种文件.ui .h .cpp,.ui就是对ui界面的设计,.h .cpp则是分别对ui界面的组件进行设置链接,后面两个应该都很熟悉,但是还是和我们平时写的类有点区别,先来讲讲.ui

  Qt为我们提供了一个Qt Designer工具,可以实现直接拖放元件,当然只是拖放,要有实际作用还是要自己去写代码

  

  下面介绍一下Qt中实用的(我用过的)插件

  第一类,按钮,项目中我们用到的按钮有两种,第一种是push button,这类就是普通的按钮,我们可以在右边的框中给按钮命名,这个命名是在代码中对元件的称呼,要改按钮上的字的话直接点击即可,同时右键可以更改字体 大小 颜色等,第二种是radio button,这类就是选择按钮,默认是单选,这个按钮有一个设定...就是点了之后必定会有一个是被选中的,就算你把所有的radio button设置成setChecked(false)(同理,可以利用这个设置选中将括号中的false改为true即可)也不能全部变成全部未选中的状态,总会有一个被选中,所以要实现的话可以多设置一个radio button然后把它隐藏,勾中这个就可以了,还有一个check box那个是多选框。

  

  第二类是文本框,LineEdit是单行文本框 TextEdit是iduohang文本框并且能显示html 图片 表格等。LineEdit获取文本框内容使用text函数,设置使用setText函数;TextEdit获取文本框内容使用toPlainText函数,设置使用setPlainText函数。

  第三类是Label,标签,这个也是属于文本框,但是只能显示,不能输入,它显示方面的优势在于它是透明的,比较好看23333

按钮的链接

  上面的只是拖放元件,要想按了之后有反应还得把按钮和代码链接起来,链接有三种方式

  第一种是按标准命名,在.h文件中进行声明

  

private slots:
    void on_login_clicked();
    void on_login2_clicked();

  on_xxx_clicked()  xxx为按钮的称呼,这个是按下的反应,也有其他的,这里我没有实践就不往下写了

  第二种是利用QtDesigner进行链接(编辑信号槽)

  

  选中元件往下滑一下

  

  然后会出现如下界面

  

  左边是系统的监听事件,右边是你自己写的函数,选好右边的函数然后点击右边的编辑添加,点击ok即可。(具体的可以参考这篇博客https://blog.csdn.net/mieleizhi0522/article/details/79259222)

  第三种是使用connect函数进行链接

  

 bool QObject::connect ( const QObject * sender, const char * signal, 
         const QObject * receiver, const char * member ) [static]

  第一个是信号发送的元件,第二个是信号的类型,第三个是信号的接受元件,第四个是执行的函数(接受元件中的),connect的用法还有很多,想要深入了解可以再去找找网上的资料,这里我就不继续讲了(我不会告诉你我不会2333)。

  这篇到这里为止,过几天再写窗口的跳转,现在得去拆炸弹了2333(bomblab)

猜你喜欢

转载自www.cnblogs.com/raidenmei/p/9756975.html