QT - 创建Qt Widgets Application项目

embedded/2024/9/24 11:23:46/

在Qt中结合OpenGL使用,可以创建一个Qt Widgets应用程序项目。在创建项目时,您可以选择使用OpenGL模板来生成一个已经集成了OpenGL的项目。这个模板会自动帮助您集成OpenGL和Qt,并生成一个基本的OpenGL窗口。您可以在这个窗口中进行OpenGL的开发和渲染。在Qt Widgets应用程序项目中,您可以很方便地使用Qt的各种UI组件、布局和事件处理机制,来实现一个完整的GUI应用程序。同时,您可以使用OpenGL来实现高性能的3D图形渲染,使您的应用程序更加生动和具有交互性。

1.Qt Widgets Application

Qt Widgets Application是用于开发桌面应用程序的模板。它是基于Qt Widgets模块构建的,可以使用各种小部件(widgets)创建各种用户界面。Qt Widgets Application提供了一个基本的主窗口,并且可以根据需要添加其他小部件,例如按钮、文本框、列表等等。它还提供了一些常用的功能,例如菜单栏、工具栏、状态栏等等,可以轻松地将它们添加到应用程序中。因此,Qt Widgets Application非常适合于开发各种类型的桌面应用程序,例如文本编辑器、图像编辑器、音乐播放器等等。

 2.选择构建系统

  1. 对于小规模、简单的Qt项目,qmake是一个很好的选择。它是Qt的默认构建系统,易于使用,可以快速生成Makefile进行构建、编译和链接。

  2. 对于中等规模和较为复杂的Qt项目,cmake可能更适合。它是一种跨平台的构建系统,可以自动生成各种不同平台下的Makefile或者Visual Studio工程文件等,从而完成项目的构建、编译和链接。

  3. 对于大规模、复杂的Qt项目,qbs可能更好一些。它是Qt提供的一种新型构建系统,使用起来更加简单和灵活,可以自动处理项目依赖关系,并生成相应的构建规则,从而进行构建、编译和链接。

3.Class Information. 

Base class:

QMainWindow是一个主窗口类,通常用于创建具有菜单栏、工具栏、状态栏等的应用程序窗口。

QWidget是一个通用的窗口部件类,用于创建各种类型的窗口,如对话框、面板、工具箱等。

QDialog是一个对话框类,通常用于显示与用户交互的信息或者收集用户输入。它是QWidget的子类,可以使用QWidget的所有功能,同时还提供了一些特殊的对话框功能,如模态对话框等。

header file:

mainwindow.h——这是MainWindow类的头文件,包含类的声明和成员函数的定义。通常在这个文件中还会包含其他需要的头文件。

source file:

mainwindow.cpp——这是MainWindow类的源文件,包含类的实现和成员函数的定义。在这个文件中,您可以实现MainWindow类中声明的函数,以及其他需要的函数和变量。

form file:

mainwindow.ui——这是MainWindow类的窗体文件,用于设计窗口的外观和布局。您可以使用Qt Designer工具创建这个文件,然后将其导入到您的项目中。在这个文件中,您可以添加各种部件,如按钮、标签、文本框等,并对它们进行布局和样式设置。

generate form前面打对勾是什么意思 

在Qt Creator中,当您使用“生成窗体”向导创建新的窗体文件时,您会看到“前面打对勾”这个选项。这个选项的作用是控制是否同时为您的窗体生成一个相关的头文件和源文件。如果您勾选了“前面打对勾”选项,Qt Creator将自动生成一个与您的窗体文件同名的头文件和源文件。这些文件将包含与窗体相关的类定义和方法实现,以便您可以在应用程序中使用该窗体。如果您取消勾选“前面打对勾”选项,则不会自动生成相关的头文件和源文件。在这种情况下,您需要手动创建这些文件,并将它们与您的窗体文件链接起来,以便在应用程序中使用该窗体。

 4.Translation File

 5.Kit Selection

qt中的 
desktop qt 5.14.2 MSVC2017 64bit
desktop qt 5.14.2 MInGW 64bit
这两个是什么意思
这两个是指Qt 5.14.2版本的桌面应用程序开发包,其中一个是使用MSVC2017 64位编译器编译的,另一个则是使用MinGW 64位编译器编译的。这两个开发包都可以用于在Windows操作系统上开发和编译Qt应用程序,但使用的编译器不同。如果您已经安装了Visual Studio 2017,则可以使用MSVC编译器进行开发。如果您没有安装Visual Studio,则可以使用MinGW编译器进行开发。

6.Project Management 

7.完成。

 8.Qt Widgets Application前后端介绍(编辑和设计按钮)。


http://www.ppmy.cn/embedded/26086.html

相关文章

Django后台项目开发实战一

开发环境使用 Anaconda, IDE 使用 pycharm 第一阶段 创建 Django 项目 在 Anaconda Prompt 中逐步输入下面的命令(之后的所有命令都在这个) 首先创建一个虚拟环境,名称自拟,python 版本我这里使用 3.9.18 关于 python 版本和…

K8s: Kubernetes扩展之自定义资源

自定义资源 自定义资源是 K8s 的扩展,有时候需要对K8s进行一个扩展在默认的K8s集群里面提供的资源对象是一个有限的集合比如常用的pod, deployment, service,这些都是K8s原生的资源之所以它资源,是因为它能够对外提供API接口变成一个resourc…

LeetCode 756. 蛇形矩阵

输入两个整数 n n n和 m m m,输出一个 n n n行 m m m列的矩阵,将数字 1 1 1到 n m nm nm按照回字蛇形填充至矩阵中。 具体矩阵形式可参考样例。 输入格式 输入共一行,包含两个整数 n n n和 m m m。 输出格式 输出满足要求的矩阵。 矩阵…

杰发科技AC7840——SPI通信简介(1)_跑通Demo

0. 简介 一些配置项: CPHA:相序 CPLO:极性 看着demo需要按键,于是去掉按键,去掉打印,直接输出波形看逻辑分析仪的信号。 其实现在做这些demo测试应该都有逻辑分析仪,直接看波形更直观一点。…

STM32控制DS1302时钟模块获取实时时间

时间记录:2024/3/30 一、知识点 (1)读写数据时序(伪SPI协议) 1.1 读写时序默认电平均为SCLK线低电平,CE线低电平 1.2 写数据,CE线拉高为高电平,开始传输数据,然后准备数…

kotlinDSL控制的安卓项目导入已存在的模块后sync报错

原因很明显,但是我还找了好久 因为在import时并没有选择groove还是kotlin控制, 所以默认为groovy控制的,然而主项目是由kotlin dsl控制的grale行为。 原因清楚之后,就可以去检查一下,项目里是否包含了settings.gradle和…

spring boot 基础案例【3】构建RESTful API与单元测试

教程1 案例教程 案例仓库 在线编程 教程2 基础教程 教程仓库 在线编程 本案例所在的仓库 本案例所在的文档 进入正文 1.文件目录 1. Chapter21Application.java 地址:chapter2-1/src/main/java/com/didispace/chapter21/Chapter21Application.java package com.d…

自定义Application,获取全局的Context

在Android中,如果你想要获取全局的Context,并且希望在整个应用程序的生命周期内都可以访问它,你可以通过创建一个自定义的Application类来实现。这个类会继承自android.app.Application,并且你可以在其中存储一些全局数据或者实现…