浅谈QT用法
一、基本介绍
C++ 是一种通用的、静态类型的、大小写敏感的、自由格式的编程语言,支持过程化编程、面向对象编程和泛型编程。它最初由 Bjarne Stroustrup 在 1979 年在贝尔实验室开始开发,目的是扩展和改进 C 语言。
Qt 是一个跨平台的 C++ 应用程序框架,用于开发具有图形用户界面的应用程序,以及非GUI程序,如控制台工具和服务器。Qt 是用 C++ 编写的,并且提供了一个叫做 Qt C++ 库的大型集合,它包含了各种控件、功能和模块,用于开发复杂的应用程序。
二、关键特性
1、跨平台:Qt 支持多种操作系统,包括 Windows、macOS、Linux、iOS 和 Android。
2、信号和槽机制:Qt 提供了一种独特的信号和槽机制,用于对象之间的通信,这使得 GUI 编程更加简单和直观。
3、丰富的控件和功能:Qt 提供了大量的预制控件和功能,如按钮、文本框、列表、图表等,以及文件处理、网络编程、数据库访问等模块。
4、QML 和 Qt Quick:Qt 提供了 QML(Qt Modeling Language),这是一种声明式编程语言,用于创建动态的 UI 和流畅的动画效果。
5、国际化和本地化:Qt 支持多语言应用程序的开发,可以轻松地添加和切换不同的语言。
6、Qt Creator:Qt 自带一个集成开发环境(IDE)Qt Creator,它提供了代码编辑、调试、项目管理等功能。
7、Qt for Device Creation:Qt 提供了一套工具和库,用于开发嵌入式和物联网(IoT)设备。
8、Qt 3D:Qt 提供了用于开发 3D 应用程序的模块。
9、Qt for WebAssembly:Qt 支持将应用程序编译为 WebAssembly,使得 Qt 应用程序可以在现代浏览器中运行。
三、代码示例
1. mainwindow.ui
(使用 Qt Designer 设计的 UI 文件)
这个文件通常通过 Qt Designer 来创建和编辑,但这里我们假设它已经存在,并且包含了一个按钮(QPushButton)。
2. mainwindow.h
#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include <QMainWindow>
QT_BEGIN_NAMESPACE
namespace Ui { class MainWindow; }
QT_END_NAMESPACE
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
MainWindow(QWidget *parent = nullptr);
~MainWindow();
private slots:
void on_pushButton_clicked();
private:
Ui::MainWindow *ui;
};
#endif // MAINWINDOW_H
3. mainwindow.cpp
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <QMessageBox>
MainWindow::MainWindow(QWidget *parent)
: QMainWindow(parent)
, ui(new Ui::MainWindow)
{
ui->setupUi(this);
connect(ui->pushButton, SIGNAL(clicked()), this, SLOT(on_pushButton_clicked()));
}
MainWindow::~MainWindow()
{
delete ui;
}
void MainWindow::on_pushButton_clicked()
{
QMessageBox::information(this, "Hello", "Button Clicked!");
}
4. main.cpp
#include "mainwindow.h"
#include <QApplication>
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
MainWindow w;
w.show();
return a.exec();
}
5. CMakeLists.txt
(用于构建项目)
cmake_minimum_required(VERSION 3.5)
project(HelloQt)
set(CMAKE_INCLUDE_CURRENT_DIR ON)
set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTORCC ON)
set(CMAKE_CXX_STANDARD 11)
find_package(Qt5 COMPONENTS Core Gui Widgets REQUIRED)
add_executable(HelloQt main.cpp mainwindow.cpp)
target_link_libraries(HelloQt Qt5::Core Qt5::Gui Qt5::Widgets)
6. 构建和运行
1)确保你已经安装了 Qt 和 CMake。
2)将上述代码保存到相应的文件中。
3)在项目根目录下创建 CMakeLists.txt
文件,并填入上述 CMake 配置。
4)在终端中运行以下命令来构建项目:
mkdir build && cd build
cmake ..
make
原文地址:https://blog.csdn.net/a876106354/article/details/143612994
免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!