QT
csu_zipple
fe
展开
-
QT学习:开发环境搭建
总有絮絮叨叨的话写在前头最近需要开发桌面应用程序,最先想到的就是C++。大一的时候是使用MFC开发的应用程序,但是开发效率和学习成本有点太大。同学说可以利用QT快速开发,于是便开始入坑了。 玩了差不多两年的Java,也是时候回头复习一波C++了不是吗….虽然C++语法都快忘完了…. 常规的开发环境搭建思路是:进入官网,查看guide,找到download按照教程进行搭建即可…. 但是这原创 2018-01-22 11:19:48 · 296 阅读 · 0 评论 -
QT:自定义Model及相关demo
使用背景随着开发项目的不断增大,业务结构越来越复杂,为了提高程序员的开发效率和降低维护成本(代码的可读性),在QT中使用MVC(MVD)模式是行之有效的方法。而自定义Model则是使用MVC模式的第一步。如何自定义QT给我们预定义了许多model,view和delegate,也就是说我们可以很方便快速的继承相应的类完成开发。我们只需要遵循相关的规范,实现一些特定的方法便可以完成自定义M原创 2018-02-04 14:58:48 · 2112 阅读 · 1 评论 -
QT:程序启动欢迎页,QSplashScreen类的使用demo
一般步骤在程序主入口函数中创建QSplashScreen对象,并且为其分配图片资源设置需要显示的message使程序在显示启动画面的同时仍能响应鼠标等事件,a.processEvents();调用QSplashScreen对象的finish()方法,等待主程序加载完成,结束启动画面经典代码int main(int argc, char *argv[]){ QAppl原创 2018-01-27 19:05:19 · 1175 阅读 · 0 评论 -
QT:实现不规则窗体
实现效果实现过程不仅仅是圆圈,理论上任何不规则的图形都可以实现出来….新建一个类继承QWidget定义以下方法及成员变量,下述方法均要重写private: QPoint dragPosition;protected: void mouseMoveEvent(QMouseEvent *); void mousePressEvent(QMouseEv原创 2018-01-27 18:53:30 · 1767 阅读 · 0 评论 -
QT:两种QProgressBar的demo
一般步骤选择进度条的显示方式设置进度条上下界显示…小demo源代码#include "progressdlg.h"#include ProgressDlg::ProgressDlg(QWidget *parent) : QDialog(parent){ //创建界面 this->setWindowTitle("进度条"); fileNums原创 2018-01-25 19:56:45 · 442 阅读 · 0 评论 -
QT:QToolBox抽屉效果
一般步骤创建QToolBox的子类建立QGroupBox用Layout布局管理初始化QGroupBox,并且添加布局中的控件用子类的addItem方法添加相应的(QWidget*)QGroupBox,这里强制转换类型关键代码layout中的控件在实际应用场景中可以自由替换…其实最近很想学QCEF,嵌入Web开发…. setWindowTitle("抽屉效果");原创 2018-01-25 19:17:58 · 3026 阅读 · 0 评论 -
QT:自定义消息对话框
一般步骤创建一个按钮,绑定显示对话框事件定义响应事件函数,创建对话框获取对话框的点击事件(按钮)实现代码//.... cBtn = new QPushButton; cBtn->setText("自定义对话框"); label = new QLabel; label->setFrameStyle(QFrame::Panel|QFrame::Sunken)原创 2018-01-25 17:40:05 · 4105 阅读 · 0 评论 -
QT:选项卡界面实现总结
搭建步骤使用StackedWidget创建堆栈窗口,用于显示内容使用SplitterWidget创建分割窗口,用于分割选项和内容建立信号和槽机制,实现切换选项卡效果关键代码StackedWidget,在构造函数中初始化三个界面及堆叠窗口,注意加载布局Tab::Tab(QWidget *parent) : QFrame(parent){ content原创 2018-01-25 11:48:05 · 7175 阅读 · 0 评论 -
QT:QDockWidget类的使用示例
使用步骤停靠窗口QDockWidget类使用步骤: 1. 创建QDockWidget对象的停靠窗体 2. 设置停靠窗体的属性 3. 新建一个要插入停靠窗体的控件,eg..QListWidget,QTextEdit 4. 将控件插入到QDockWidget中–setWidget()方法 5. 使用addDockWidget方法在mainWindow中加入停靠窗体示例#inc原创 2018-01-23 16:35:38 · 4080 阅读 · 0 评论 -
QT之void QSplitter::setStretchFactor(int index, int stretch)函数及示例
定义调用setStretchFactor函数用于设定可伸缩控件,第一个参数是指定设置的控件序号,控件序号按对象中控件插入的先后次序从0开始依次编号;第二个参数是一个大于0的值,表示此控件为可伸缩控件。 Updates the size policy of the widget at position index to have a stretch factor of stretch.原创 2018-01-23 12:45:23 · 1662 阅读 · 0 评论 -
QT的信号和槽机制
什么是信号和槽机制?为了解开程序界面中不同对象的耦合,QT提供了信号和槽机制用于界面操作的响应,是完成任意两个QT对象之间的通信机制。QT对象包含许多预定义的信号和槽。 信号:在某个特定情况或者动作下被触发而发出的消息 槽:接收并处理信号的消息的函数。 当一个特定的事件发生时,一个信号被发送,与信号相关联的槽会响应信号并完成的相应的处理。连接方式在对应类中的构造函数中添加以下代码原创 2018-01-22 17:56:38 · 320 阅读 · 0 评论 -
QT的伙伴编辑模式
什么是伙伴编辑模式当用户激活标签的快捷键时,鼠标/键盘的焦点将会转移到它的伙伴窗口部件上。 QT对象中只有QLabel标签对象才可以有伙伴窗口部件,也只有QLabel对象具有快捷键时,伙伴关系才有效。 典型的代码片段:QLineEdit* ageLineEdit = new QLineEdit(this);QLabel* ageLabel = new QLabel("&Age",th原创 2018-01-22 17:27:21 · 4258 阅读 · 0 评论 -
QT:MVC模式->MVD的使用DEMO
简介MVC设计模式包括三个元素:表示数据的模型(Model)、表示用户界面的视图(View)和定义了用户在界面上操作的控制器(Controller)。 与MVC架构相似,QT为了方便程序的开发,引入了模型/视图结构用于完成数据与界面的分离,也就是常用的InterView框架。与传统的MVC模式不同的是,InterView框架把视图和控制器部件结合在一起,使得框架更为简洁。为了灵活地处理用户输原创 2018-01-28 14:35:17 · 3046 阅读 · 2 评论