Qt学习笔记之二--创建一个简单的qt互动界面(超级无敌巨详细,0基础也能会,主打的就是图多,语句通俗)

本文介绍了如何使用Qt创建项目,选择基类为QWidget,并通过QtCreator设计UI界面,包括设置布局、添加控件。文章详细讲解了.pro工程文件的结构和内容,以及槽和信号的概念,用于实现按钮点击事件。此外,还涵盖了资源文件的添加和使用,以及如何美化窗口。最后,展示了如何通过代码实现窗口间的交互。
摘要由CSDN通过智能技术生成

一、创建我们的项目。

 

选择第一个选项,然后两个下一步------

直到

 

这里要选择基类,我们选择Qwiget

 至于为什么,可以看看我收藏的这篇博客QMainWindow和QWidget的区别_qwidget和qmainwindow_独行侠_阿涛的博客-CSDN博客

ok,创建完成后,我们使用快捷键Ctrl+R来运行一下,看看是否会弹出小窗口,弹出说明没有问题。

注意!!! 路径必须是纯英文路径!!!

二、分析文件构成--学习的必要知识

第一个后缀是.pro的文件。打开它

 这pro文件就是工程文件,我们来一起分析一下这个文件。

第6行中

QT       += core gui//代表加入了 core 和gui模块。

greaterThan(QT_MAJOR_VERSION, 4): QT += widgets  //假如qt的版本大于4就加入widgets模块

TARGET = class1//生成的app名字
TEMPLATE = app//编译产物的类型

# The following define makes your compiler emit warnings if you use
# any feature of Qt which has been marked as deprecated (the exact warnings
# depend on your compiler). Please consult the documentation of the
# deprecated API in order to know how to port your code away from it.
DEFINES += QT_DEPRECATED_WARNINGS

# You can also make your code fail to compile if you use deprecated APIs.
# In order to do so, uncomment the following line.
# You can also select to disable deprecated APIs only up to a certain version of Qt.
#DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000    # disables all the APIs deprecated before Qt 6.0.0

CONFIG += c++11

SOURCES += \         //指定工程里面有哪些cpp文件
        main.cpp \
        widget.cpp \
    first.cpp

HEADERS += \   //指定工程的头文件
        widget.h \
    first.h

FORMS += \    //指定工程里面有哪些ui文件
        widget.ui \  
    first.ui

# Default rules for deployment.
qnx: target.path = /tmp/$${TARGET}/bin
else: unix:!android: target.path = /opt/$${TARGET}/bin
!isEmpty(target.path): INSTALLS += target

RESOURCES += \
    tu.qrc

分析注释在代码里面了,这些语句都是自动加入的不需要我们手动输入。

三、打开UI文件,开始设计界面

点击form,双击Ui文件即可进入ui编辑器页面。

 箭头所指的是布局和界面设计工具栏。

这个矩形窗体是我们的待设计窗体(忽略我做的东西...)

 

 

 

 作图的感觉太爽了!

因为我写过一个登录界面了,这篇博客我就整一个注册界面吧。

照着这个整一个!!

gogogo

这窗口太小给他在右边的geometry里面改改大小,改成 800  600

 

 拉一个label标签->text上写文字“欢迎注册QQ”

改一下变量名字 !!!!------记得每个组件都改改,方便后续我们进行代码的书写。

这里可以设置文字字体和位置 

设置文字大小 。

同理再像上面的步骤搞一个标题,像qq一样。

拉两个label作账号密码。

 拉两个line Edit作为输入账号密码的框。        

如果是登录界面我们想要密码不显示,显示出*******。在右边对象设计器中选择password即可。

 

根据上面的教学--做出自己的调整

这是我做好的。

还缺少一个注册的按钮。

按钮是

 拉一个放到下面

是不是还挺像那么回事,我们Ctrl+s保存一下运行看看 。

 ok,看上去很不错。但是只是个花架子,点击按钮没反应。

下面是Qt重点!!

四、槽和信号

打开我们的ui编辑器界面进行编辑,右键这个“立即注册”按钮

点击转到槽。

选择cliked()信号,就是鼠标点击信号。 

自动转到代码中,并且创建函数,自动在.h文件里声明文件,如果要更改函数名,需要你手动在.h函数中声明函数。

声明函数只能在public slots或者private slots中声明。

 这行代码是信息提示框代码。

//对话框分类
//模态对话框 :不允许对其他窗口进行操作
//非模态对话框 :可以对其他窗口进行操作

具体的可以在csdn上查一下学习。

QMessageBox::information(this,"注册成功","注册成功");

五、美化窗口-----给界面加点图片

右键项目->add new 选择 Qt Resource File 

 路径必须英文,名称应该也得是英文。

 下一步完成,保存 Ctrl+s。

创建完成后,我们可以在工程文件下看到我们创建的文件

 

打开项目路径,把图片拖进来。

右键.prc文件,选择OPEN with 里面的资源编辑器。选择添加里面的添加前缀

我把前缀改为/  重点改完后立马Ctrl+s保存。

然后点击添加文件,选择想要添加的图片即可。

 打开UI编辑器

对任何一部分构件都可以右键,更改样式表,添加资源。

不要直接点击添加资源,点击下拉栏里面的border-image。

 点击选择图片即可。

六、添加窗口------交互后弹出另一个窗口

在项目内右键

点击 ADD new ....

选择如图

选择widget

 

 自己起一个好听的名字吧

下一步->完成。

按照上面几步,搞一下新窗口的ui,美化一下。

 在主页面中的按钮转到槽开始编辑代码来显示新窗口

void Widget::on_loginin_clicked()
{    QString username =ui->lineEdit->text();
     QString password =ui->lineEdit_2->text();
      if(username=="123456" &&password=="wumoumou")
     {
          qDebug("成功");
     first *fi =new first;
     fi->setGeometry(this->geometry());//和主窗口的大小保持一致
     fi->show();
      }
}

看一下这篇博客的成果吧

 

毋某某
关注 关注
  • 38
    点赞
  • 71
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
超细节的QT设计完整界面布局的流程-新手向
weixin_43496944的博客
07-16 7390
超细节的QT设计完整界面布局的流程-新手向流程简介常用快捷键总流程一、创建一个新项目二、生成项目文件三、设计界面步骤①头文件处理②在源文件.cpp中进行对象生成、属性设置③主文件main.cpp操作 流程简介 ———————— QT版本:4.8.4 使用的书:QT5开发及实例(第三版) ———————— 本文仅根据个人观点讲解对于QT框架下的一个完整的布局界面设计的详细流程,以及一些 很多像我这样的初学者应该注意的细节。 文字有点多,看起来可能会觉得啰嗦, 但是初学者仔细看还是能学不少东西,具体的当然还是要
利用Qt实现简单界面
dcispuzzle的专栏
04-13 2284
要利用Qt实现界面首先必备的两个工具的
使用Qt制作一个简单界面
嵌入式领域、软硬件开发
07-01 430
选择 build system,有qmake、CMake 和 Qbs 三个选项。CMake 很常用,功能也很强大,许多知名的项目都是用它,比如 OpenCV 和 VTK,但它的语法繁杂。qmake 是针对辅助 Qt 开发的,但也可以在非 Qt 项目使用,特点是语法简单明了,但功能也相对简单。Qbs 号称下一代构建工具,也有好多人力捧 Qbs,没用过。这里选择默认的 qmake。
qt】制作一个简单qt界面(qq登陆界面)
Cherry0030的博客
07-20 4861
例如,打印一串字符,每点击一次sign in按钮,就会打印一行。选中某一控件,根据对应位置,直接双击,然后输入要修改的名字。槽:通常将某个槽函数绑定在控件的信号上,当点击控件触发信号时,也就会触发这个槽函数。但登录和注册的按钮都无法使用,因此需要对按钮进行设置,即设置qt的信号和槽。2. 在widget.cpp中创建槽函数,具体实现功能在在此槽函数中编。当我们在不知道某个函数怎么使用时,可以在帮助->索引中查找相关函数的用法。sign in按钮为例:选中控件->右击->转到槽->clicked。
QT--3.创建一个简单的图形界面
weixin_45913886的博客
08-18 2476
qt的移植性非常强。
(四) 制作一个简单qt界面
热门推荐
qq_45138815的博客
03-31 1万+
用制作一个简单qt登录界面 1.QT基础 1.qt的移植性非常强,一套代码我们不用改的太多,直接通用所有的平台,不久的将来,qt会被用到MCU上,学习QT非常的有意义。 2.做一个简单QT界面 如何创建一个QT工程 1.直接点击新建项目里面的application 2. 3.不能有中文名字 4.选择qwidget 5…pro文件里有哪些东西呢 6.Forms中的.ui文件 7.找到label 8.调整字体大小 9.居中对齐 10.一行文本输入 11.放账号和密码的对话框 12.按
QT一个简单的登录界面
06-18
使用QT一个简单的登录界面
emis--QT.rar_QT界面_emis--QT
09-19
QT界面设计与EMIS系统开发 QT是一种广泛应用于软件开发的跨平台应用程序开发框架,尤其在创建图形用户界面(GUI)方面表现出色。...对于想要学习QT或者开发类似系统的人来说,这是一个宝贵的学习资源。
Qt网络编程基础-思维导图-学习笔记
最新发布
08-18
Qt网络编程的基础知识,涵盖了TCP/IP客户端和服务器的实现,以及如何获取本机网络信息。Qt网络模块提供了编TCP/IP客户端和服务器的类,如QTcpSocket用于实现TCP客户端功能,QTcpServer用于实现TCP服务器功能,以及...
QT基础QT帮助文档-中文版
05-24
### 创建第一个QT工程 在开始探索QT编程时,首先需要掌握如何创建QT工程。QT提供了两种主要的方法来创建工程项目:一种是通过设计器的方式,另一种则是采用纯编码的方式来实现。 #### 设计器创建 设计师创建方法...
Qt+Cutelyst学习笔记(二十七)win10+Qt5.15.2+qmake实现一个简单的RESTful服务器 示例源码
04-12
Qt+Cutelyst学习笔记(二十七)win10+Qt5.15.2+qmake实现一个简单的RESTful服务器 示例源码 https://blog.csdn.net/aggs1990/article/details/124115368 CSDN审核可能较慢,如无法下载,可以过段时间再回来看下
3.5.1 QT图形界面开发入门教程
03-20
本文由广州创龙团队编,请勿二改二传,谢谢。 Qt一个 1991 年由奇趣科技开发的跨平台 C++图形用户界面应用程序开发框架。它 既可以开发 GUI 程序,也可用于开发非 GUI 程序,比如控制台工具和服务器。Qt 是面向 对象的框架,使用特殊的代码生成扩展(称为元对象编译器(Meta Object Compiler, moc)) 以及一些宏,易于扩展,允许组件编程......
根据不同配置动态创建QT界面
09-21
vs2010+QT5.5.1,此程序用于学习使用QT库读取xml文件,json文件,sqlite数据库,ini文件,以及QT10个基本控件的使用,同时代码中加入了一点设计模式,提高可扩展性降低耦合性并减少开销
QT做的一个仪表盘界面
08-29
在VS2005上做的,可以直接移植到WINCE上,也可以再windows下运行,用了双缓冲的技术,来实现指针动态变化,运行比较流畅。
QT平台上的动态可定制界面设计
07-26
引入了一种在QT平台上设计动态定制界面的方案:通过XML文档将所有的界面元素与信息存储起来,系统启动时读取不同的XML文档,从而实现加载界面的切换。基于此方案,可以预先由界面美工人员设计不同风格的界面,并采用工具将其转化为不同的XML文档。
qt-opensource-linux-x64-5.12.12.run
07-12
Qt(官方发音 [kju:t],音同 cute)是一个跨平台的 C++ 开发库,主要用来开发图形用户界面(Graphical User Interface,GUI)程序,当然也可以开发不带界面的命令行(Command User Interface,CUI)程序。...
从头学Qt Quick(1) --体验快速构建动态效果界面
weixin_30509393的博客
05-07 183
自2005年Qt4发布以来,Qt已经为成千上万的应用程序提供了框架服务,现在Qt已经基本上支持所有的开发平台了,这里面既包含了桌面、嵌入式领域,也包括了Android、IOS、WP等移动操作平台,甚至支持最新的Ubuntu Phone。 Qt Quick是一个UI技术组,Qt Quick本身主要包含了QML、JavaScript、 Qt C++三种技术。其中的主角就是QML(Qt Declara...
Qt 制作一个界面
weixin_38516302的博客
07-29 3347
使用Qt制作一个界面界面中添加相应的控件,绘制所需的图形,并从数据库中获取相应数据在图中绘制,具体界面如下: 大致流程: 由上图来分析出此界面所经历的流程: 首先我是将整个界面分为三个部分,分别为顶部的标题Label;中间绘制的柱状图以及坐标轴;底部的提示框以及按钮、时间等控件。 首先在主界面利用网格布局QGridLayout设置五个QGroupBox,两个按钮:呼叫和返回,以及可编辑的时间QDateTimeEdit以及一个Qlabel放置日期。并在绘图事件中绘制按钮的边框以及产出次数和异常次数的值。代
嵌入式学习QT学习----3 制作简单QT界面(如:QQ登录界面
qq_42822743的博客
05-01 1万+
1、创建一个QT工程 new project —> Application —> Qt Widgets Application —> choose…(注意不要有中文路径)填名称(我的名称为class2)和创建路径(D:\qt\qt_demo\class2) —> 填类名,这里基类要选择“QWidget”,这样一个QT工程就创建好啦。 qt的移植性非常强,一套代码我们不用修改太多,直接通用所有的平台。 说明: QMain Window:主窗口类,主窗口具有主菜单栏、工具
写文章

热门文章

  • Segmentation fault错误原因总结 33257
  • MySQL安装出现The configuration for MySQL Server 8.0.28 has failed. You can...错误 24607
  • Qt学习笔记之二--创建一个简单的qt互动界面(超级无敌巨详细,0基础也能会,主打的就是图多,语句通俗) 4205
  • 关于实验室数据结构实验错误本周总结。引用调用bug 1824
  • 有序顺序表合并的代码讲解 1457

分类专栏

  • Python 4篇
  • c语言 13篇
  • 数据结构与算法 9篇
  • 课业设计 3篇
  • 大作业 1篇

最新评论

  • MySQL安装出现The configuration for MySQL Server 8.0.28 has failed. You can...错误

    Qantasin: 牛啊!!成功了!!!

  • MySQL安装出现The configuration for MySQL Server 8.0.28 has failed. You can...错误

    灰烬中崛起: 怎么办啊,按照步骤来了好几次了,注册表什么都删除了,还是不行,文件名也没有空格

  • MySQL安装出现The configuration for MySQL Server 8.0.28 has failed. You can...错误

    Ylice——: 啊啊啊啊,气死气死,为什么表情包还是不行

  • MySQL安装出现The configuration for MySQL Server 8.0.28 has failed. You can...错误

    Nikonikonikonkoniko: http://t.csdnimg.cn/aNIzC试试这个

  • MySQL安装出现The configuration for MySQL Server 8.0.28 has failed. You can...错误

    it's a beautiful day: 谢谢,解决了,爱你

大家在看

  • 在SpringBoot中优雅整合MongoDB——让你的数据存储更灵活
  • JavaScript学习文档(5):为什么需要函数、函数使用、函数传参、函数返回值、作用域、匿名函数、逻辑中断
  • string类运算符
  • Swift编译器模块化:构建高性能代码的基石
  • 推荐一款AI智能编程助手CodeGeeX 217

最新文章

  • Python基础数据类型详解(二)
  • Python基础数据类型详解(一)
  • 重新学习之python入门(1)
2024年4篇
2023年1篇
2022年16篇
2021年2篇

目录

目录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值

PHP网站源码吉祥网站优化软件罗湖网站关键词优化丹竹头百度竞价包年推广宝安设计网站双龙模板推广深圳网站优化按天收费大浪百度关键词包年推广大鹏百姓网标王推广平湖网站改版双龙网站推广系统坂田网站推广坂田网站改版南澳关键词排名坪地百度爱采购南联百姓网标王推广同乐网站优化按天计费荷坳优化大芬网站改版同乐网站改版龙岗seo优化龙岗关键词按天扣费福永百姓网标王推广丹竹头百度网站优化大鹏至尊标王龙华网站优化软件横岗模板推广南山网络推广丹竹头营销型网站建设民治网页设计石岩模板推广歼20紧急升空逼退外机英媒称团队夜以继日筹划王妃复出草木蔓发 春山在望成都发生巨响 当地回应60岁老人炒菠菜未焯水致肾病恶化男子涉嫌走私被判11年却一天牢没坐劳斯莱斯右转逼停直行车网传落水者说“没让你救”系谣言广东通报13岁男孩性侵女童不予立案贵州小伙回应在美国卖三蹦子火了淀粉肠小王子日销售额涨超10倍有个姐真把千机伞做出来了近3万元金手镯仅含足金十克呼北高速交通事故已致14人死亡杨洋拄拐现身医院国产伟哥去年销售近13亿男子给前妻转账 现任妻子起诉要回新基金只募集到26元还是员工自购男孩疑遭霸凌 家长讨说法被踢出群充个话费竟沦为间接洗钱工具新的一天从800个哈欠开始单亲妈妈陷入热恋 14岁儿子报警#春分立蛋大挑战#中国投资客涌入日本东京买房两大学生合买彩票中奖一人不认账新加坡主帅:唯一目标击败中国队月嫂回应掌掴婴儿是在赶虫子19岁小伙救下5人后溺亡 多方发声清明节放假3天调休1天张家界的山上“长”满了韩国人?开封王婆为何火了主播靠辱骂母亲走红被批捕封号代拍被何赛飞拿着魔杖追着打阿根廷将发行1万与2万面值的纸币库克现身上海为江西彩礼“减负”的“试婚人”因自嘲式简历走红的教授更新简介殡仪馆花卉高于市场价3倍还重复用网友称在豆瓣酱里吃出老鼠头315晚会后胖东来又人满为患了网友建议重庆地铁不准乘客携带菜筐特朗普谈“凯特王妃P图照”罗斯否认插足凯特王妃婚姻青海通报栏杆断裂小学生跌落住进ICU恒大被罚41.75亿到底怎么缴湖南一县政协主席疑涉刑案被控制茶百道就改标签日期致歉王树国3次鞠躬告别西交大师生张立群任西安交通大学校长杨倩无缘巴黎奥运

PHP网站源码 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化