2015-04-27 06:20
⁄ 工业·编程
⁄ 共 4293字
本文接下来试图看看 QLayout 与窗口的几何尺寸控制。
注意:本文只是试图解释,QLayout其实没有任何神秘的东西,它所有的功能离开它你也都可以做。但这并不是鼓励大家不使用QLayout。
始终记住一点:要改变一个Widget的大小,只有move()、resize()、setGeometry()这3个东西可用,当然,对于带装饰器的顶级窗口,你还可以通过鼠标等改变大小或移动窗口位置(但这个不在本文讨论范围内)。
相关阅读
----漫谈QWi...
Qt, QWidget阅读全文
2015-04-26 06:17
⁄ 工业·编程
⁄ 共 2043字
对于QWidget,总觉得该写点什么。可又不知道具体该写些什么,思路又乱又杂。简单理理,简单写写,就叫漫谈吧
注意:我不知道本文写完会是什么样子,可能写着写着就没下文了。也可能各部分隔很长时间。
注意:本系列涉及到的东西都是Qt用户需要理解的,但是,我们不应该在实际项目中这么用。
QWidget
QWidget 是Qt中所有widget部件(比如QDialog、QPushButton、QLabel)的基类。
任何你可以通过其派生类实现的东西,你都可...
Qt, QWidget阅读全文
2015-04-21 20:55
⁄ 工业·编程
⁄ 共 6032字
1.QWidget设置为类似如右键菜单
setWindowFlags(Qt::FramelessWindowHint | Qt::Popup | Qt::NoDropShadowWindowHint);
2.QTreeWidget创建parent item刷新问题
ui->treeRoom->resizeColumnToContents(0);
3.
setWindowFlags(Qt::FramelessWindowHint | Qt::Popup | Qt::NoDropShadowWindowHint);
setAttribute(Qt::WA_NoSystemBackground, true);
setAttribute(Qt::WA_TranslucentBackground, true);
setAttribute(Qt::WA...
Qt, 代码集锦阅读全文
2015-04-20 20:51
⁄ 工业·编程
⁄ 共 6346字
本文实现了自定义标题栏的最小化,最大化(自适应任务栏),关闭,拉伸,拖曳。因为不想引入其他资源,所以按钮,背景都是系统提供的。
效果图:
直接上代码----
#include "widget.h"
#include <QApplication>
#include "CustomFrame.h"
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
Widget *w = new Widget();
Cust...
Qt, 代码集锦阅读全文
2015-04-19 20:29
⁄ 工业·编程
⁄ 共 1390字
QMap< QString, QString > m_Files; QMap< QString, QString > m_FileMimetypes; QHash<QString, QString> ImportEPUB::LoadFolderStructure() { QList<QString> keys = m_Files.keys(); int num_files = keys.count(); QFutureSynchronizer<tuple<QString, QString> > sync;
&...
Qt, 代码集锦阅读全文
2015-04-15 20:18
⁄ 工业·编程
⁄ 共 921字
在Qt里面自定义部件,一般都是继承自QWidget,如果自定义MainWidget
class MainWindow : public QWidget
{
Q_OBJECT
public:
MainWindow(QWidget *parent = 0);
virtual ~MainWindow();
};
在构造函数MainWindow里面实现如下:
setWindowFlags(
Qt::FramelessWindowHint | Qt::WindowSystemMenuHint
| Qt::WindowMinimizeButtonHint);
setAttribute(Qt::WA_TranslucentBackground);
Flags 表示...
Qt, 界面设计阅读全文
2015-04-14 06:41
⁄ 工业·编程
⁄ 共 317字
1.只有继承自QObject的子类才可以使用Qt的属性系统
2.在类的定义文件中使用Q_PROPERTY()声明一个属性
3.属性相当于类的一种数据成员,这些数据成员有如下特点:必须有读函数,可选的部分有写函数,重置函数,以及DESIGNABLE
SCRIPTABLE STORED 特性,
写函数是用于设置这个属性值
读函数是用于访问这个属性值
重置函数是用于恢复这个属性的默认值
这三个函数可以是从父类中继承,但是在多继承体系中这三个函数必须继承自第一个...
Qt阅读全文
2015-04-13 06:30
⁄ 工业·编程
⁄ 共 1332字
QSocketNotifier 用来监听系统文件操作,将操作转换为Qt事件进入系统的消息循环队列。并调用预先设置的事件接受函数,处理事件。
一共存在3类事件:read,write,exception.
QSocketNotifier::Read 0 There is data to be read.
QSocketNotifier::Write 1 Data can be written.
QS...
Qt阅读全文
2015-04-12 06:23
⁄ 工业·编程
⁄ 共 1552字
最近我写项目的时候遇到一个奇怪的需求,要在工作线程内,根据某个情况弹出一个MessageBox,但是Qt提供的MessageBox只可以在gui线程(主线程)使用,于是我就对QMessageBox封装了一下,让其可以在非gui线程内被调用。
特新介绍
1.可以在任何线程调用
2.show后和默认的MessageBox一样是阻塞的,MessageBox关闭后才会返回
注意:
1.我只封装了information,如果需要其他的,请做扩展
声明:
#include <QM...
Qt阅读全文
2015-04-10 06:20
⁄ 工业·编程
⁄ 共 5418字
有时候经常需要把串口放到单独的一个线程去处理数据,于是我就把串口封装了一下,即支持了多线程也方便使用。
特性介绍:
1.串口工作是在一个单独的线程,更加稳定
2.实例化的对象可在多个线程被调用且不会出错
注意:
1.一些control开头的信号,是内部通讯用的,请勿直接使用
2.一般来说,只要管accepted和error两个信号就可以了
3.JasonQt_SerialPort_Run这个是工作用的类,不推荐直接使用
4.用到了C++11语法,所以请务必开启...
Qt, 串口编程, 多线程编程阅读全文