QT笔记
Memories off
告别回忆
展开
-
QT学习(1) 给label添加图片资源
自此开始记录学习QT的点点滴滴,虽然都是一些很简单的东西。慢慢来吧。首先,要在项目里添加一个资源文件。 然后给资源文件添加前缀,把我们自己的图片拷贝进去。此处右击可以拷贝图片路径在ui设计界面添加一个label,起名为labelpicture。MainWindow::MainWindow(QWidget *parent) : QMainWindow(par...原创 2018-12-20 11:33:08 · 4839 阅读 · 2 评论 -
QT学习(9) 绘图设备之QPicture
和之前的用法很类似了,仍然是交给画家(QPainter)来作画。本例画家先在Widget的构造函数中把图画好,并保存。Widget::Widget(QWidget *parent) : QWidget(parent), ui(new Ui::Widget){ ui->setupUi(this); QPicture picture; QPa...原创 2019-03-11 20:58:00 · 867 阅读 · 0 评论 -
QT学习(6) QBitMap和QPixmap的区别
官方文档上面说:QPixmap is designed and optimized for showing images on screen. QBitmap is only a convenience class that inherits QPixmap, ensuring a depth of 1.QBitmap继承了QPixmap,它俩最明显的区别是:前者显示黑白图片,后者显示彩色...原创 2019-02-26 20:01:06 · 755 阅读 · 0 评论 -
QT学习(8) 绘图设备之QImage
继续讨论绘图设备,QImage适合多线程绘图。可以执行像素点操作。重写Widget构造函数如下:Widget::Widget(QWidget *parent) : QWidget(parent), ui(new Ui::Widget){ ui->setupUi(this); //创建一个绘图设备,Format设置为背景透明 QImage ...原创 2019-03-01 21:11:27 · 1954 阅读 · 0 评论 -
QT学习(5) 手动窗口重绘
仍然关注paintEvent,在上例中,它自动调用了。这里想要手动调用paintEvent,该怎么做呢? 官方文档说,可以通过调用repaint或者update方法来重绘窗口。在UI设计窗口添加一个按钮,当我们按下这个按钮时,让窗口上的一个图片从左往右移动一段距离。当图片到达窗口最右边时,再次点击按钮,图片会回到窗口的最左边。在窗口中绘制图片:p.drawPixmap...原创 2019-02-25 20:03:07 · 6021 阅读 · 1 评论 -
QT学习(4)简单绘图
绘制线段、矩形、椭圆。在Widget类中作如下修改:class Widget : public QWidget{ Q_OBJECTpublic: explicit Widget(QWidget *parent = nullptr); ~Widget();protected: void paintEvent(QPaintEvent *);priva...原创 2019-02-19 19:32:24 · 372 阅读 · 0 评论 -
QT学习(7) 绘图设备之QPixmap
延续前面的话题,继续讨论绘图。这里使用QPixmap绘图设备,不是在paintEvent中使用的,而是直接在Widget的构造函数中使用。Widget::Widget(QWidget *parent) : QWidget(parent), ui(new Ui::Widget){ ui->setupUi(this); //绘图设备,大小为400*3...原创 2019-02-27 21:11:49 · 762 阅读 · 0 评论 -
QT学习(3) 简单布局实现登录界面的效果
这是在一个QT的视频教学上看到的,记录一下。GUI编程中,界面组件的布局很重要,如果没有加入布局的话,当用户调整窗口大小的时候就会很难看。可能是把一些改显示的东西遮住了,也可能是界面上大量留白。先看一下QQ的登录界面:其中最基础的就是用户头像,帐号,密码和登录按钮了。我们自己实现一个类似的界面。此外,这个界面可以随意拉伸或者收缩。图片大小和界面上标签的组件的绝对位置也会发生...原创 2018-12-25 16:24:18 · 2406 阅读 · 0 评论 -
QT学习(2) QDockWidget和QTreeWidget简单使用
使用visual studio时,左边的项目资源管理器窗口是可以脱离主窗口的。这就是所谓的“浮窗”了。在QT中,这种浮窗效果由QDockWidget来实现。此外vs的浮窗中还可以查看文件的目录树(一般是项目的目录树),这个目录树是通过QTreeWidget来实现的。QT提供的ui设计基本组件功能十分强大,基本不用写代码就可以设计出一个简单的界面。首先新建一个桌面应用,转到ui设计界面。...原创 2018-12-25 15:38:33 · 1303 阅读 · 0 评论 -
QT学习(10) QPixmap和QImage的相互转换
QPixmap转为Image:void Widget::paintEvent(QPaintEvent *){ QPainter p(this); QPixmap pixmap; pixmap.load("../Image/noya.jpg"); QImage tempImage = pixmap.toImage(); p.drawImage(0, 0...原创 2019-03-12 21:28:11 · 3787 阅读 · 0 评论