qt 学习笔记
今池鱼
已识乾坤大,尤怜草木青。
展开
-
如何自学qt(12)——绘图(上)
1,在头文件中添加绘图事件//paint.cppvoid paintEvent(QPaintEvent *event);2,在窗体函数里实现事件具体功能见注释#include<QPainter> //画家类//实例一个画家对象,this指定绘图设备QPainter painter(this);//画线void Widget::paintEvent(QPaintEvent *event){ //实例一个画家对象,this指定绘图设备 QPainter pai原创 2020-11-04 12:23:02 · 293 阅读 · 0 评论 -
如何自学QT(11)——event分发的理解
事件什么是事件?(9)里面的鼠标,(10)里面的计时器,都是qt的事件——只不过,他们并不是直接面向应用的,在事件和app中间,还夹着一个分发器bool evenr(QEvent *ev);如果返回值是true,证明用户要处理这个事件,不再向外分发了...原创 2020-11-01 00:09:19 · 194 阅读 · 0 评论 -
如何自学qt(10)——计时器
学了这个就能玩时限梗了首先查个文档(注意,选类的时候选QTimer)和(9)中鼠标事件类似的身影因为这个没有进入进出的问题,所以我们可以直接在主窗体里面实现首先,在.h文件中声明一下,我们要重写这个函数了//mainwindow.hpublic: void timerEvent(QTimerEvent *e);//就是把帮助文档复制过去在.cpp文件中重写函数//mainwindow.cppvoid MainWindow::timerEvent(QTimerEvent *e)原创 2020-10-29 22:54:11 · 277 阅读 · 0 评论 -
如何自学qt(9)——鼠标响应
在写鼠标事件之前,我们先按(8)的方法造一个mylabel控件,并把它应用在主窗口【为了方便看,我给这个label加了黑框,修改位置在这里】然后就可以开始写鼠标事件了遇事不决,先查文档可以看到,qt提供了鼠标事件的五种操作,分别是移动,摁压,释放(图1),进入(图2),和离开(图3)而且,这是一种虚函数——这就说明,我们要自己实现它。先在mylabel的头文件里面写声明//mylabel.hpublic: explicit mylabel(QWidget *parent =原创 2020-10-29 21:12:07 · 313 阅读 · 0 评论 -
如何自学qt(8)——自定义封装控件
首先,选择qt中的设计师界面类【然后随便选一个窗口就行,这里我们选择widget,一个空窗口】选择两个控件,做一个水平布局,调整大小。观察,这个控件是widget类,所以我们在主窗口里也创建这样一个类,对它右键,选择提升为输入创建的类名,点击添加...原创 2020-10-27 14:15:31 · 661 阅读 · 0 评论 -
如何自学qt(7)——其他控件
1,ListWidget大概可以理解为,写成链表的widget①麻烦的可以细化属性的填入方法QListWidgetItem *item = new QListWidgetItem("相见争如不见");//把item放进控件ui -> listWidget->addItem(item);//设置item在框里的位置item->setTextAlignment(Qt::AlignHCenter);//枚举如果找不到可以查帮助文档效果如下②快捷的没法设置位置的填入方法Q原创 2020-10-11 23:12:11 · 249 阅读 · 0 评论 -
如何自学QT(6)——在?看看摁钮控件
1, pushbutton①添加资源【把资源文件添加到res中的操作见前文】找到icon项点击下箭头,添加资源可以选择图标,最左边的转向可以撤销。【不要点添加文件!添加文件不显示的!】2,toolbutton比起pushbutton,toolbutton更适合用于添加图片资源【举个例子,就是qq的图标】添加图片,添加文本找到toolbuttonstyle 修改图片和文本的相对位置如果点击autoraise,可以把摁钮改成透明的,鼠标移动显示最后效果3,radiobutton原创 2020-10-08 12:12:08 · 224 阅读 · 0 评论 -
如何自学qt(5)——页面布局
拖拽也是要讲基本法的!1,选取wight进行布局点击,拖到界面,把要布局的控件扔进去然后点这个这样,里面的控件就可以乖乖摆成一排类似的,竖直控件是一列,如果要矩阵排列,就点栅格布局(右三)如果想要删除,点打破布局(右二)控件和wight之间是有固定边距的,一般为9,可以在这里修改可以修改窗口的长度,使它和控件等高或等宽,参数在这里跟之前一样,修改成fixed即可2,关于弹簧1,布局后才能使用弹簧2,弹簧的长度是可以设定的在这3,弹簧可以固定长度点击fixed即可3原创 2020-10-07 23:34:41 · 372 阅读 · 0 评论 -
如何自学qt(4)——对话框
1,触发对话框在qt中,对话框分成两种一种是模态对话框,简单的说,就是点开后无法忽视它,必须要关闭才能操作其他窗口【如果强制操作会发出duang的声音】另一种是非模态对话框,跟上面那个相反,是一个无所谓的对话框。具体的话……先在ui里创建两个触发一个叫new,一个叫open用new触发模态对话框的生成,代码如下connect(ui->actionnew,&QAction::triggered,[=](){ //对话框分类 //模态对话框(不可以对其他原创 2020-10-06 21:23:08 · 817 阅读 · 0 评论 -
如何自学qt(3) ——添加资源文件
添加资源文件(×)如何把我老婆放上界面(√)1,把图片拷贝到项目下2,在项目中添加res文件我把它起名成了res【友情提示,这个qrc不能双击打开,要右键点击open in editor】3,添加资源文件在res.qrc里面添加前缀和文件,选中之前粘进项目的我老婆图标4,使用然后就可以在项目里添加啦! // 使用qt资源 ": + 前缀名 + 文件名" ui ->actionnew -> setIcon(QIcon(":/xin.jpg"));其中,a原创 2020-10-06 10:04:16 · 165 阅读 · 0 评论 -
如何自学qt(2) ——MainWindow类相关
这一篇主要讲MainWindow这个基础类——因为我学qt的终极目标是做一个文本编辑器,所以这个就很重要。我实在是懒得描述这四个1,菜单栏【中午没买咖啡,我现在困的像狗】菜单栏只能有一个,在最上面,类似于word里面的那一排“文件”“格式”“布局”什么的基础设置代码如下#include "mainwindow.h"#include "ui_mainwindow.h"#include <QPushButton>#include <QDebug>#include &l原创 2020-10-04 18:41:26 · 429 阅读 · 0 评论 -
如何自学qt(1)
【题目应该叫,如何在面试的前一天临时抱佛脚】1,文件目录项目名称——pro文件,里面有基础的版本信息,一般不改——头文件,和c++一样,自动生成——资源文件main.cpp :程序入口mainwindow : 窗体文件,代码在里面——组成里面放着ui2,写代码!①写个摁钮吧两种写法,一种是QPushButton *b = new QPushButton();然后在后面设定b -> setParent(this); //继承的窗体b -> setText("f原创 2020-10-04 12:23:05 · 382 阅读 · 0 评论