QT学习之路DAY1之初学QT的小项目
以下所有代码均利用软件QT5编写
项目一:Hello world!
利用QTcreator创建项目
修改main.cpp代码为
#include "mainwindow.h"
#include <QApplication>
#include <QLabel> int main(int argc, char *argv[])
{
QApplication a(argc, argv);
QLabel *label = new QLabel("Hello, world!");
label->show(); return a.exec();
}
运行即可

让Hello变为红色
改变main.cpp的代码
#include "mainwindow.h"
#include <QApplication>
#include <QLabel> int main(int argc, char *argv[])
{
QApplication a(argc, argv);
QLabel *label = new QLabel("<h2><font color='red'>Hello</font>, world! <h2>");
label->show(); return a.exec();
}

项目二:使用信号槽
还是改变main.cpp
//信号槽 #include "mainwindow.h"
#include <QApplication>
#include <QPushButton> int main(int argc, char *argv[])
{
QApplication a(argc, argv);
QPushButton *button = new QPushButton("Quit");
QObject::connect(button,SIGNAL(clicked()),&a,SLOT(quit()));
//connect是一个用于连接信号槽的静态函数
button->show(); return a.exec();
}

效果就是按下QUIT后退出
项目三:创建一个滑动杆和微调器并且连接起来
还是修改main.cpp
#include <QWidget>
#include <QSpinBox>
#include <QSlider>
#include <QHBoxLayout>
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
QWidget *window = new QWidget;//创建窗口
window->setWindowTitle("Enter your age");//设置窗口标题
QSpinBox *spinBox = new QSpinBox;//创建上下箭头微调器
QSlider *slider = new QSlider(Qt::Horizontal);//创建滑动杆
spinBox->setRange(, );//设置微调器范围
slider->setRange(, );//设置滑动杆范围
QObject::connect(slider, SIGNAL(valueChanged(int)), spinBox,
SLOT(setValue(int)));//利用槽函数连接
QObject::connect(spinBox, SIGNAL(valueChanged(int)), slider,
SLOT(setValue(int)));//利用槽函数连接
spinBox->setValue();//设置初始值
QHBoxLayout *layout = new QHBoxLayout;//水平布局
/* QHBoxLayout- 按照水平方向从左到右布局;
QVBoxLayout- 按照竖直方向从上到下布局;
QGridLayout- 在一个网格中进行布局,类似于 HTML 的 table。*/
layout->addWidget(spinBox);//添加子布局
layout->addWidget(slider);
window->setLayout(layout);
window->show();
return app.exec();
}

QT学习之路DAY1之初学QT的小项目的更多相关文章
- Qt学习之路(2)------Qt中的字符串类
QString QString的一些基本用法 basic.cpp #include <QTextStream> int main(void) { QTextStream out(stdou ...
- Qt学习之路(1)------Qt常用类用法说明
Qt常用类 向控制台输出文本 第一个例子,我们采用STL的方式: console.cpp #include <iostream> int main() { std::cout <&l ...
- Qt学习之路
Qt学习之路_14(简易音乐播放器) Qt学习之路_13(简易俄罗斯方块) Qt学习之路_12(简易数据管理系统) Qt学习之路_11(简易多文档编辑器) Qt学习之路_10(Qt ...
- QT学习之路--创建一个对话框
Q_OBJECT:这是一个宏,凡是定义信号槽的类都必须声明这个宏. 函数tr()全名是QObject::tr(),被他处理过的字符串可以使用工具提取出来翻译成其他语言,也就是做国际化使用. 对于QT学 ...
- 转载: Qt 学习之路 2归档
Qt 学习之路 2归档 http://www.devbean.net/2012/08/qt-study-road-2-catelog/
- Qt 学习之路 2
Qt 学习之路 2 | DevBean Tech World Qt 学习之路 2 Qt 学习之路 2 目录
- Qt 学习之路 2(76):QML 和 QtQuick 2
Home / Qt 学习之路 2 / Qt 学习之路 2(76):QML 和 QtQuick 2 Qt 学习之路 2(76):QML 和 QtQuick 2 豆子 2013年12月18日 Qt ...
- Qt 学习之路 2(74):线程和 QObject
Home / Qt 学习之路 2 / Qt 学习之路 2(74):线程和 QObject Qt 学习之路 2(74):线程和 QObject 豆子 2013年12月3日 Qt 学习之路 2 2 ...
- Qt 学习之路 2(73):Qt 线程相关类
Home / Qt 学习之路 2 / Qt 学习之路 2(73):Qt 线程相关类 Qt 学习之路 2(73):Qt 线程相关类 豆子 2013年11月26日 Qt 学习之路 2 7条评论 希 ...
随机推荐
- Hadoop 部署之 Hive (五)
目录 一.Hive 简介 1.什么是 Hive 2.为什么使用 Hive 3.Hive 的特点 4.Hive 的架构 二.Hive 安装 1.MySQL 安装(datanode01) 2.MySQL ...
- 【Unsolved】线性时间选择算法的复杂度证明
线性时间选择算法中,最坏情况仍然可以保持O(n). 原因是通过对中位数的中位数的寻找,保证每次分组后,任意一组包含元素的数量不会大于某个值. 普通的Partition最坏情况下,每次只能排除一个元素, ...
- DOTS原则和愿景
Unity Data Oriented Tech Stack基于一系列原则.这些原则为我们正在努力实现的目标提供了良好的背景.一些原则清楚地反映在代码中.其他则只是我们为自己设定的目标. 默认情况下的 ...
- [Tensorflow] 使用 tf.keras.utils.get_file() 下载 MS-COCO 2014 数据集
import argparse import tensorflow as tf tf.enable_eager_execution() def main(args): ""&quo ...
- kubernetes配置文件热更新细节
Secret与ConfigMap都是kubernetes用于文件配置的调用对象,细微的区在于Secret存储敏感信息,例如密码,OAuth token和SSH key等等,Secret更加安全和灵活. ...
- OpenCV.3.4.6_VS2015&cmake编译x86版本的bin&lib
ZC:<<OpenCV3编程入门>> 的 2.2.2 中也有该内容的讲解 1.参考网址:opencv3.3.0+vs2015+cmake编译opencv x86 - wowo的 ...
- last 和 lastb 命令
NAME last - show listing of last logged in users 数据源:/var/log/wtmp 文件 lsstb - show listing of last l ...
- 类型限定符volatile
目录 类型限定符volatile 强制内存读取 禁止编译优化 注意:volatile不能够保证线程同步 volatile bool flag; volatile int a; 添加volatile限定 ...
- python接口测试
引入unittest框架 get请求 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 #coding: utf-8 import un ...
- Netty源码剖析-启动服务
参考文献:极客时间傅健老师的<Netty源码剖析与实战>Talk is cheap.show me the code! --1主线分两步: 一:首先在our thread里,如果写在mai ...