首页 > 编程知识 正文

qt开发教程,QT开发指南

时间:2023-05-06 17:50:05 阅读:259902 作者:3976

1.简述

Qt 是一个1991年由Qt Company开发的跨平台C++图形用户界面应用程序开发框架。它既可以开发GUI程序,也可用于开发非GUI程序,比如控制台工具和服务器。2008年,Qt Company科技被诺基亚公司收购,Qt也因此成为诺基亚旗下的编程语言工具。2012年,Qt被Digia收购。由此开发出来的产品有Linux桌面环境 KDE、谷歌地图和VLC多媒体播放器等

2.基本框架

FirstProject.pro

QT += core gui Qt包含的模块greaterThan(QT_MAJOR_VERSION, 4): QT += widgets //大于4版本以上 包含 widget模块TARGET = 01_FirstProject //目标 生成的.exe程序的名称TEMPLATE = app //模板 应用程序模板 Application SOURCES += main.cpp //源文件 mywidget.cppHEADERS += mywidget.h //头文件

QT基本模块

QT对象树

3.第一个工程

main.cpp

#include "mywidget.h"#include <QApplication>// 包含一个应用程序类的头文件//main程序入口 argc命令行变量的数量 argv命令行变量的数组int main(int argc, char *argv[]){ //a应用程序对象,在Qt中,应用程序对象 有且仅有一个 QApplication a(argc, argv); //窗口对象 myWidget父类 -> QWidget myWidget w; //窗口对象 默认不会显示,必须要调用show方法显示窗口 w.show(); //让应用程序对象进入消息循环 //当代码阻塞到这行 return a.exec();}

mywidget.h

#ifndef MYWIDGET_H#define MYWIDGET_H#include <QWidget> //包含头文件 QWidget 窗口类class myWidget : public QWidget{ Q_OBJECT // Q_OBJECT宏,允许类中使用信号和槽的机制public: myWidget(QWidget *parent = 0); //构造函数 ~myWidget(); //析构函数};#endif // MYWIDGET_H

mywidget.cpp

#include "mywidget.h"#include <QPushButton> //按钮控件的头文件#include "mypushbutton.h"#include <QDebug>// 命名规范// 类名 首字母大写,单词和单词之间首字母大写// 函数名 变量名称 首字母小写,单词和单词之间首字母大写//快捷键//注释 ctrl + ///运行 ctrl + r//编译 ctrl + b//字体缩放 ctrl + 鼠标滚轮//查找 ctrl + f//整行移动 ctrl + shift + ↑ 或者↓//帮助文档 F1//自动对齐 ctrl + i;//同名之间的.h 和 .cpp切换 F4//帮助文档 第一种方式 F1 第二种 左侧按钮 第三种 C:QtQt5.6.05.6mingw49_32binmyWidget::myWidget(QWidget *parent) : QWidget(parent){ //创建一个按钮 QPushButton * btn = new QPushButton; //btn->show(); //show以顶层方式弹出窗口控件 //让btn对象 依赖在 myWidget窗口中 btn->setParent(this); //显示文本 btn->setText("第一个按钮"); //创建第二个按钮 按照控件的大小创建窗口 QPushButton * btn2 = new QPushButton("第二个按钮",this); //移动btn2按钮 btn2->move(100,100); //按钮可不可以 重新制定大小 可以! btn2->resize(250,250); //重置窗口大小 resize(600,400); //设置固定窗口大小 setFixedSize(600,400); //设置窗口标题 setWindowTitle("第一个窗口"); //创建一个自己的按钮对象 MyPushButton * myBtn = new MyPushButton; myBtn->setText("我自己的按钮"); myBtn->move(200,0); myBtn->setParent(this); //设置到对象树中 //需求 点击我的按钮 关闭窗口 //参数1 信号的发送者 参数2 发送的信号(函数的地址) 参数3 信号的接受者 参数4 处理的槽函数 //connect( myBtn, &MyPushButton::clicked, this, &myWidget::close ); connect( myBtn, &QPushButton::clicked, this, &QWidget::close );}myWidget::~myWidget(){ qDebug() << "myWidget的析构调用";}

mypushbutton.cpp

#include "mypushbutton.h"#include <QDebug>MyPushButton::MyPushButton(QWidget *parent) : QPushButton(parent){ qDebug() << "我的按钮类构造调用";}MyPushButton::~MyPushButton(){ qDebug() << "我的按钮类析构";}

运行显示

4.加入讨论

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。