用户图形界面(GUI)入门

简介: 用户图形界面(GUI)入门

编程入门之后,做出的东西都是控制台程序,虽然可以用,但是不是那么友好。而且,控制台程序和我们印象中的程序,比如Word,Excel,QQ,这些程序感觉不一样。

为了做出更实用的东西,有必要学习用户图形界面(GUI)。

可做用户图形界面的东西很多,最后我决定选择Qt5.

在网上找了很久教程,看到一个很好的图文教程:

《Qt 学习之路 2》目录 - DevBean Tech World

再贴一个网易云课堂上的比较新的入门视频教程:

QT入门精讲 - 网易云课堂

开始学习QT:

1序

介绍了作者写教程的原因和经过。


2Qt前言 Qt简介

Qt 是一个著名的 C++ 应用程序框架。你并不能说它只是一个 GUI 库,因为 Qt 十分庞大,并不仅仅是 GUI 组件。使用 Qt,在一定程度上你获得的是一个“一站式”的解决方案:不再需要研究 STL,不再需要 C++ 的<string>,不再需要到处去找解析 XML、连接数据库、访问网络的各种第三方库,因为 Qt 自己内置了这些技术。


Qt是一个“一站式”的解决方案,内置了多种“做软件”的技术。  

3 Hello, world  第一个Qt程序

安装Qt开发环境(具体安装步骤见教程Qt 学习之路 2(3):Hello, world! - DevBean Tech World)

打开Qt Creator,

文件,新建文件或工程(项目),选择项目-Applications,中间选择 Qt Gui 应用(我的是Qt Widgets Application)

然后和教程基本一样。

Qt Creator 帮助我们在 HelloWorld 项目文件夹下生成了四个文件:main.cpp,mainwindow.cpp,mainwindow.h 和 HelloWorld.pro。

pro 文件就是 Qt 工程文件(project file),由 qmake 处理,生成 make 程序所需要的 makefile;

main.cpp 里面就是一个main函数,作为应用程序的入口函数;

其他两个文件就是先前我们曾经指定的文件名的文件。

修改main.cpp

//包含QApplication
//main函数创建application对象(GUI程序是QApplication,非GUI程序是QCoreApplication)
#include <QApplication>
 
//包含QLabel库,用于创建文本块
#include <QLabel>
 
int main(int argc, char *argv[])
{
    QApplication app(argc, argv);
 
    QLabel label("Hello, world");
    label.show();
 
    return app.exec();
}

输出窗口

相关文章
|
SQL Oracle 关系型数据库
Oracle之regexp系列函数详解
Oracle之regexp系列函数详解
864 1
第7节:Vue3 动态绑定多个属性
第7节:Vue3 动态绑定多个属性
490 0
uniapp Vue3 日历 可签到 跳转
uniapp Vue3 日历 可签到 跳转
178 0
|
域名解析 存储 网络协议
深入解析网络通信关键要素:IP 协议、DNS 及相关技术
本文详细介绍了IP协议报头结构及其各字段的功能,包括版本、首部长度、服务类型、总长度、标识、片偏移、标志、生存时间(TTL)、协议、首部检验和等内容。此外,还探讨了IP地址的网段划分、特殊IP地址的应用场景,以及路由选择的大致流程。最后,文章简要介绍了DNS协议的作用及其发展历史,解释了域名解析系统的工作原理。
498 5
深入解析网络通信关键要素:IP 协议、DNS 及相关技术
|
传感器 安全 算法
在物联网项目中使用 MicroPython 时如何确保数据安全
在物联网项目中使用MicroPython时,确保数据安全至关重要。可通过加密通信、安全固件更新、认证机制和定期审计等方法提升安全性,防止数据泄露和设备被恶意操控。
|
人工智能 NoSQL atlas
生成式AI入门必读:基本概念、数据挑战与解决方案
许多企业正在选择MongoDB Atlas。其原生向量搜索功能,加上统一的 API 和灵活的文档模型,对于寻求通过 RAG 方法提取专有数据来增强 LLM 的企业来说,是一个有吸引力的选择。
3867 4
|
机器学习/深度学习 监控 数据可视化
【BetterBench博士】2024年中国研究生数学建模竞赛 E题:高速公路应急车道紧急启用模型 问题分析、数学模型及Python代码
2024年中国研究生数学建模竞赛E题要求建立高速公路应急车道紧急启用模型,以缓解特定路段的拥堵问题。题目提供了四个视频观测点的数据,需分析交通流参数随时间的变化规律,建立拥堵预警模型,并验证模型有效性。此外,还需设计合理的应急车道启用规则和算法,优化视频监控点布局,以提升决策科学性和成本效益。涉及视频数据处理、非线性动态系统建模和机器学习等技术。适合交通工程、数学、计算机科学等多个专业学生参与。需利用Python等工具进行数据处理和建模。具体问题包括统计参数变化、建立拥堵模型、验证模型有效性、设计启用规则和优化监控点布局。
1551 12
【BetterBench博士】2024年中国研究生数学建模竞赛 E题:高速公路应急车道紧急启用模型 问题分析、数学模型及Python代码
|
Cloud Native 关系型数据库 分布式数据库
阿里云牵手海亮科技,共建“教育科技数据库创新应用中心”
近日,阿里云与世界500强旗下、国内领先的教育服务提供商海亮科技集团(以下简称“海亮科技”)达成合作,联合成立“教育科技数据库创新应用中心”。双方将充分整合优势资源,共同推进教育科技领域的数据库技术研究和国产数据库的应用与发展。
283 8
|
Web App开发 应用服务中间件 网络安全
如何在 Apache 和 Nginx 上配置 OCSP Stapling
如何在 Apache 和 Nginx 上配置 OCSP Stapling
460 9
|
Java Maven 开发工具
记录一次Maven无法打包的排查过程
【5月更文挑战第3天】记录一次WhatTheFuck经历
795 2
记录一次Maven无法打包的排查过程