Qt界面编程基本操作
Qt界面编程基本操作
了解基本代码构成
类widget的头文件widget.h如下:
#ifndef WIDGET_H
#define WIDGET_H
#include <QWidget>
#include <QDebug>
namespace Ui {
class Widget;
}
class Widget : public QWidget
{ //信号与槽相关宏
Q_OBJECT
public:
//构造且使用explicit(显式)方式进行, parent = 0表示不指定父对象.
explicit Widget(QWidget *parent = 0);
~Widget();
private slots:
//槽函数
void on_pushButton_clicked();
void on_pushButton_2_clicked();
private:
Ui::Widget *ui;
};
#endif // WIDGET_H
常用基础知识
查看帮助
- 光标放到对应单词上, 点击F1, 即可进入对应单词的帮助.
- Qt左边导航菜单进入帮助.
- /Qt/Qt5.x/5.x/mingwxxx_xx/bin/assistant.exe
添加C++11支持
- CONFIG += C++11
指定父对象的两种方式
- 一种通过对象的setParent属性
- 一种是构造对象时通过构造函数传参QPushButton(QWidget *p);
- 好处:
- 父窗口显示, 子窗口就显示(父对象要在子对象创建后调用show()).
- 父窗口结束, 自动回收所有子窗口内存.
新建多个窗口
- 在添加类时选择Base Class, 一般选择Qwidget较多.
- 多个窗口的头文件放到主窗口的头文件中, 作为主窗口的对象成员来使用.
信号与槽
- 信号函数和槽函数均没有返回值.
- connect(sender, signal, 接收对象, 槽函数), 每个参数都是指针类型:
//按下按钮1, 则按钮2隐藏
connect(&btn1, &QPushButton::pressed, &btn2, &QPushButton::hide);
- 转到槽
对象的常见操作
- 隐藏对象
Obj.hide()
- 显示对象
Obj.show();
- 设置对象的显示字符
Obj.setText("xxx");
- 移动对象
Obj.move(100, 100)
- 窗口持续运行等待用户操作, 该函数会造成窗口阻塞, 当创建模态对话框时, 调用此函数阻塞. 此函数之后的代码将在关闭窗口时执行.
a.exec();
- 设定窗口大小
resize(400, 300);
- 发送信号
- 声明信号(信号没有返回值, 但可以有参数, 信号只需声明, 无需定义)
signals:
void mySignal();
- 发送信号
emit mySignal();
Qt界面编程基本操作的更多相关文章
- Qt界面编程之多窗口切换
1.基础知识 信号和槽 信号和槽都是函数,用来完成信号间的协同操作 2.多窗口切换实例 功能 实现登录和重新登录功能 组成 登录界面 和主窗体界面 3.源代码提供
- 为什么qt成为c++界面编程的第一选择
为什么qt成为c++界面编程的第一选择 一.前言 为什么现在QT越来越成为界面编程的第一选择,笔者从事qt界面编程已经有接近8年,在这之前我做C++界面都是基于MFC,也做过5年左右.当时为什么会从M ...
- 为什么 qt 成为 c++ 界面编程的第一选择?
为什么qt成为c++界面编程的第一选择 一.前言 为什么现在QT越来越成为界面编程的第一选择,笔者从事qt界面编程已经有接近8年,在这之前我做C++界面都是基于MFC,也做过5年左右.当时为什么会从M ...
- Linux C 程序 GTK+图形界面编程(22)
GTK+图形界面编程 Linux大多是在字符界面,但也可以开发图形界面 目前已经存在多种Linux下开发图形界面的程序开发包:最常用的是Qt和GTK+ Qt是一个跨平台的图形界面开发库,不仅仅支持Li ...
- CC++初学者编程教程(9) Windows8.1安装VS2013并捆绑QT与编程助手
我们在Windows8.1安装VS2013并捆绑QT与编程助手需要下列文件. 2. 在虚拟机中开启Windows8.1 3.然后选择VS2013的安装镜像. 4.将镜像复制到虚拟机. 5.我们装载这个 ...
- CC++刚開始学习的人编程教程(9) Windows8.1安装VS2013并捆绑QT与编程助手
我们在Windows8.1安装VS2013并捆绑QT与编程助手须要下列文件. 2. 在虚拟机中开启Windows8.1 3.然后选择VS2013的安装镜像. 4.将镜像拷贝到虚拟机. 5.我们装载这个 ...
- Qt网络编程QTcpServer和QTcpSocket的理解
前一段时间通过调试Qt源码,大致了解了Qt的事件机制.信号槽机制.毕竟能力和时间有限.有些地方理解的并不是很清楚. 开发环境:Linux((fedora 17),Qt版本(qt-everywhere- ...
- Python入门 —— 03GUI界面编程
GUI(Graphical User Interface) 即图形用户接口,又称图形用户接口. 是指采用图形方式显示的计算机操作用户界面.GUI 是屏幕产品的视觉体验和互动操作部分. "你的 ...
- c++学习书籍推荐《C++ GUI Qt 4编程(第2版)》下载
下载地址:点我 百度云及其他网盘下载地址:点我 编辑推荐 <C++ GUI Qt 4编程(第2版)>讲授的大量Qt4编程原理和实践,都可以轻易将其应用于Qt4.4.Qt4.5及后续版本的Q ...
随机推荐
- 乘风破浪:LeetCode真题_016_3Sum Closest
乘风破浪:LeetCode真题_016_3Sum Closest 一.前言 这一次,问题又升级了,寻找的是三个数之和最靠近的某个数,这是非常让人难以思考的,需要把三个数相加之后和最后给的目标 ...
- OC内存管理-黄金法则
1.内存管理-黄金法则 The basic rule to apply is everything that increases the reference counter with alloc, [ ...
- 51nod 1403 有趣的堆栈
题目看这里 主要是能分析出这样一个结论: 每个pop根据这个元素上面被压过多少个元素,可以知道他是在前面哪个pop之前被push的. 根据这些信息可以求得每个pop到上一个pop之间有多少个push, ...
- Burp Suite使用介绍总结
Burp Suite使用介绍(一) 小乐天 · 2014/05/01 19:54 Getting Started Burp Suite 是用于攻击web 应用程序的集成平台.它包含了许多工具,并为这些 ...
- 10、Node.js模块系统
##################################################################################介绍Node.js模块系统为了让No ...
- python BaseManager中register()的描述
register(typeid[, callable[, proxytype[, exposed[, method_to_typeid[, create_method]]]]]) A classmet ...
- c++ 一般虚函数
类图: 代码: #include <iostream> using namespace std; class CFather //父类 { public: virtual void dis ...
- Hive分区表创建,增加及删除
1.创建Hive分区表,按字段分区 CREATE TABLE test1 ( id bigint , create_time timestamp , user_id string) partition ...
- TP,TN,FP,FN
一张图搞定~~~ [转]https://blog.csdn.net/u011956147/article/details/78967145
- 随手练——POJ - 2676 数独 (回溯法)
POJ - 2676 : http://poj.org/problem?id=2676: 解题思想 (大力出奇迹): 1. 依次在空格里面填上“1~9”,并检查这个数字是否合法(其所在的行.列,以及3 ...