Splitter 的函数中有addWidget,但是却没有removeWidget, 或者delete之类的功能,所以如果想删去或者暂时不显示其中的某些widget就要自己手动完成这个效果。方法一:取出想删除的widget,删除它的指针,QSplitter找不到这个widget的地址,就会自动清除这 ...
分类:
其他好文 时间:
2018-07-03 19:53:30
阅读次数:
803
常见的窗体是各种方形的对话框,但有时候也需要非方形的窗体,如圆形,椭圆甚至是不规则形状的对话框。 实现步骤: ? 新建一个项目,比如项目名称叫做“ShapeWidget”,给此项目添加一个类“ShapeWidget”,基类选择“QWidget”。 ? 为了使该不规则窗体可以通过鼠标随意拖拽,在类中重 ...
学习了事件、绘图。做个练习,在窗口画出一个棋盘,鼠标点下的格子显示图片 源代码: widget.h #ifndef WIDGET_H #define WIDGET_H #include <QWidget> #include <QPaintEvent> #include <QMouseEvent> n ...
分类:
其他好文 时间:
2018-06-23 00:07:37
阅读次数:
195
信号槽是 Qt 框架引以为豪的机制之一。所谓信号槽,实际就是观察者模式。当某个事件发生之后,比如,按钮检测到自己被点击了一下,它就会发出一个信号(signal)。这种发出是没有目的的,类似广播。如果有对象对这个信号感兴趣,它就会使用连接(connect)函数,意思是,将想要处理的信号和自己的一个函数 ...
分类:
其他好文 时间:
2018-06-23 00:05:45
阅读次数:
245
概念: Qwidget:所有窗口及窗口控件都是从QWidget直接或间接派生出来的。 在Qt中创建对象的时候会提供一个Parent对象指针,下面来解释这个parent到底是干什么的。 ? QObject是以对象树的形式组织起来的。 ? 当你创建一个QObject对象时,会看到QObject的构造函数 ...
分类:
其他好文 时间:
2018-06-22 23:59:36
阅读次数:
301
事件对象创建完毕后,Qt 将这个事件对象传递给QObject的event()函数。event()函数并不直接处理事件,而是将这些事件对象按照它们不同的类型,分发给不同的事件处理器(event handler)。 如上所述,event()函数主要用于事件的分发。所以,如果你希望在事件分发之前做一些操作 ...
分类:
其他好文 时间:
2018-06-22 23:59:04
阅读次数:
371
Qt消息机制和事件 事件(event)是由系统或者 Qt 本身在不同的时刻发出的。当用户按下鼠标、敲下键盘,或者是窗口需要重新绘制的时候,都会发出一个相应的事件。一些事件在对用户操作做出响应时发出,如键盘事件等;另一些事件则是由系统自动发出,如计时器事件。 在前面也曾经简单提到,Qt 程序需要在ma ...
分类:
其他好文 时间:
2018-06-22 23:50:46
阅读次数:
236
Qt绘制系统简介 Qt 的绘图系统允许使用相同的 API 在屏幕和其它打印设备上进行绘制。整个绘图系统基于QPainter,QPainterDevice和QPaintEngine三个类。 QPainter用来执行绘制的操作; QPaintDevice是一个二维空间的抽象,这个二维空间允许QPaint ...
分类:
其他好文 时间:
2018-06-08 00:56:15
阅读次数:
692
问题:自己创建的一个MyWidget类,添加到主窗口的一个QDockWidget,实例化后不能随其自动改变大小。环境:win7、Qt_5_9_5_MSVC2015_64bit在自己写的MyWidget的构造函数里:ui->setupUi(this);setLayout(ui->XXXLayout);注:1.XXXLayout是MyWidget的layout,要使一个widget有自适应
分类:
其他好文 时间:
2018-06-04 19:21:56
阅读次数:
158
if __name__ == "__main__": import sys app = QtGui.QApplication(sys.argv) Form = QtGui.QWidget() ui = Ui_Form() ui.setupUi(Form) Form.show() sys.exit(a... ...
分类:
其他好文 时间:
2018-05-27 10:43:22
阅读次数:
180