【qt】仿写一个智能家居页面

这篇具有很好参考价值的文章主要介绍了【qt】仿写一个智能家居页面。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

来源

B站大学
示例图片:
qt的智能家居界面设计,qt,智能家居,开发语言

1. 向界面中添加图片

1.1 添加图片资源文件

qt的智能家居界面设计,qt,智能家居,开发语言
qt的智能家居界面设计,qt,智能家居,开发语言
qt的智能家居界面设计,qt,智能家居,开发语言
后面的保持默认,点击完成。成功后可以看到:
qt的智能家居界面设计,qt,智能家居,开发语言
qt的智能家居界面设计,qt,智能家居,开发语言
再将图片拖入工程文件夹下面。
qt的智能家居界面设计,qt,智能家居,开发语言
向页面添加图片
qt的智能家居界面设计,qt,智能家居,开发语言
qt的智能家居界面设计,qt,智能家居,开发语言
qt的智能家居界面设计,qt,智能家居,开发语言
前缀名可以是自己设定,注意添加完毕后一定要先保存(ctrl+s),看文件后面的小星号*消失就保存成功,否则后面无法添加文件。
qt的智能家居界面设计,qt,智能家居,开发语言

4.2 引用这个图片

回到ui文件,将一个label拖到页面中,删除label中的文字,右键这个label,选改变样式表。qt的智能家居界面设计,qt,智能家居,开发语言
点击添加资源旁边的小箭头(不要直接点击添加资源!),点击border image。qt的智能家居界面设计,qt,智能家居,开发语言
qt的智能家居界面设计,qt,智能家居,开发语言
然后一直ok就行。
同样可以通过拖拽label为图片添加文字说明。
qt的智能家居界面设计,qt,智能家居,开发语言

4.3 向按钮添加图片

示例图片中单机相应按钮会触发相应事件(开灯、开空调等等),因此我们需要为图片添加功能,即在按钮上添加图片。
选中按钮->右键->改变样式表
qt的智能家居界面设计,qt,智能家居,开发语言
重复如上引用图片步骤即可。
qt的智能家居界面设计,qt,智能家居,开发语言
推荐图标下载小网站 。免费下载。以及阿里巴巴矢量库。

4.4 删除引用

选中要删除的控件->右键->更改样式表->删除这一行->ok即可删除。
qt的智能家居界面设计,qt,智能家居,开发语言

2. 设置界面布局

成熟的界面(比如网页)通过拖动大小都是会有相应调节,显示不开的也会带滚动条,但是我们目前做的拖动我们的qt界面会乱,也没有滚动条。
qt的智能家居界面设计,qt,智能家居,开发语言
因此我们要学会布局。

  • qt下的布局:水平布局、垂直布局、栅格布局

qt的智能家居界面设计,qt,智能家居,开发语言
水平布局:
qt的智能家居界面设计,qt,智能家居,开发语言
垂直布局:
qt的智能家居界面设计,qt,智能家居,开发语言
打破布局:
qt的智能家居界面设计,qt,智能家居,开发语言

加弹簧:如果想要两个控件之间有一定距离,可以加横向和纵向弹簧。加弹簧首先要打破布局。
qt的智能家居界面设计,qt,智能家居,开发语言
效果:
qt的智能家居界面设计,qt,智能家居,开发语言
拖动大小:仍然保持布局。
qt的智能家居界面设计,qt,智能家居,开发语言

3. 界面切换

3.1 创建新界面

选择最顶部的工程名,右键,添加新文件。
qt的智能家居界面设计,qt,智能家居,开发语言
qt的智能家居界面设计,qt,智能家居,开发语言
qt的智能家居界面设计,qt,智能家居,开发语言
根据自己,要不要改名,下一步,完成。
下面完善这个新界面:
qt的智能家居界面设计,qt,智能家居,开发语言

3.2 显示新界面

点击运行,发现并不会显示该界面,显示的是之前qq登陆的界面,因为没有在代码中指定该页面的运行,因此需要修改代码部分来运行该界面。现在我们规定:点击登录按钮弹出来这个界面。

  1. 引入新界面的头文件

qt的智能家居界面设计,qt,智能家居,开发语言

  1. 创建新对象并显示窗口
void Widget::on_loginBt_clicked()
{
    qDebug("log in successfully");
    controller *ctrl = new controller;
    ctrl->setGeometry(this->geometry());
    ctrl->show();
}

我们来看下效果:
qt的智能家居界面设计,qt,智能家居,开发语言
qt的智能家居界面设计,qt,智能家居,开发语言

  1. 添加返回功能

【1】添加一个返回按钮
qt的智能家居界面设计,qt,智能家居,开发语言
将按钮加入布局后会很长,通过修改maximunSize来限制其大小。
qt的智能家居界面设计,qt,智能家居,开发语言
但是现在的问题又是没居中,将其居中在布局中:
qt的智能家居界面设计,qt,智能家居,开发语言
效果:
qt的智能家居界面设计,qt,智能家居,开发语言
【2】关联信号和槽
注意:关联之前不要忘了先修改按钮的名称!
【3】在槽函数中添加代码

this->close();

运行效果:
点击back uo按钮就会关闭当前窗口。

4. 获取输入

我们现在不判断账号密码的准确性而直接进入智能家居界面,现我们添加账号密码的验证:

  1. 关联信号和槽函数
connect(ui->logBt, SIGNAL(clicked()), this, SLOT(on_loginBt_clicked()));

按钮右键自动关联,但无法修改槽函数名字,要想修改槽函数的函数名,则可通过上一篇讲的手动关联进行。

  1. 设计槽函数
void Widget::on_loginBt_clicked()
{
    qDebug("log in successfully");

    QString username, password;
    username = ui->usernameEt->text();
    password = ui->passwordEt->text();
    if(username == "123" && password == "123"){
        controller *ctrl = new controller;
        ctrl->setGeometry(this->geometry());
        ctrl->show();
    }
}

保存运行即可通过登录按钮验证。文章来源地址https://www.toymoban.com/news/detail-860176.html

到了这里,关于【qt】仿写一个智能家居页面的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 基于QT的智能家居中控系统的简明设计

      系统采用 “ 主从式架构 ” ,即一主多从式,该智能居家控制系统的主要功能包括 登录功能 、 注册功能 、 音乐播放功能 、 时间显示 、 日历显示 、 温度湿度光照气压海拔数据等环境指标数据 显示等。   该智能居家控制系统的软硬件环境如下:   硬件环境:

    2024年02月09日
    浏览(41)
  • QT学习开发笔记(项目实战之智能家居物联网项目1 )

    本章介绍使用 Qt 开发智能家居中的一个物联应用。简单直白的说就是通过云服务器远程控 制设备(与设备通信等)。本章可以直接做毕设,是毕设物联网项目的一大福音!本章将实现远 程点亮开发板 LED 作为一个项目实例。 在生活中,我们可能使用过 WIFI 智能插座这款产品

    2023年04月13日
    浏览(66)
  • QT学习开发笔记(项目实战之智能家居物联 UI 界面开发 )

    项目路径为 4/01_smarthome/01_smarthome/01_smarthome.pro,先看项目界面。项目界面如 下,采用暗黑主题设计,结合黄色作为亮色,让用户一目了然。界面笔者从一些智能家居界面 中找到灵感的,编写设计完成的效果不错!请自行查阅源码,掌握了本教程前面第七章的内容, 就可以理

    2024年02月16日
    浏览(50)
  • 亲手打造一个本地LLM语音助手来管理智能家居

    经历过 Siri 和 Google 助手之后,我发现尽管它们能够控制各种设备,但却无法进行个性化定制,并且不可避免地依赖于云服务。出于对新知识的渴望以及想在生活中使用一些酷炫的东西,我下定决心,要追求更高的目标。 我的要求很简单: 我想要一个既幽默又带有讽刺意味的

    2024年01月21日
    浏览(50)
  • 两个Mesh路由、一个5口交换机,打造智能家居无缝网络覆盖

    在现代家庭中,无线网络已经成为了必需品,每个人都希望享受到无缝连接的畅快体验。然而,由于信号覆盖范围的限制和信号干扰等问题,很多家庭在组网方面遇到了一些困难。 对于有需求的家庭而言,两个Mesh路由器是一种非常理想的解决方案。Mesh路由器系统是一种通过

    2024年01月19日
    浏览(75)
  • 入门级带你实现一个安卓智能家居APP(1)java版本

    ?xml version=\\\"1.0\\\" encoding=\\\"utf-8\\\"? 以上是比较重要的UI控件,大家了解一下,其他的一些属性我就不多说了,你们可以自己尝试修改一下参数,就会发现具体的对应的作用是什么了。 我们的ui已经做好了,现在就去写主活动类的逻辑代码!!! 我主要说说主要逻辑吧。 首先,当然是

    2024年04月27日
    浏览(42)
  • QT使用MQTT协议连接ONENET云平台:智能家居PC客户端开发笔记-1 环境搭建

    前端时间做了一个项目,要求在PC端使用QT制作一个客户端,用来接收从单片机上传到Onennet的数据,并且还要下发指令。当时弄了好几天,中途遇见了非常多的问题,所以写下这篇文章记录一下,同时分享一下自己的经验。 我的环境:QT 5.12.6 总结下我遇见的难点: 1,环境配

    2024年02月11日
    浏览(69)
  • 记录关于智能家居的路程的一个bug___Segmentation fault(段错误)

    其实发生段错误的情况有很多: 其实在项目的开发中最有可能的错误就是①和②,考虑到本项目数组用的比较少,所以主要是考虑错误①指针的误用。 有时候错误就是那么离谱,声音也算是一种设备????? 有时候又没有段错误 怀疑是多线程的问题,把线程一个一个注释

    2024年04月15日
    浏览(33)
  • QT使用MQTT协议连接ONENET云平台:智能家居PC客户端开发笔记-2 项目开发

    这篇文章主要是分享QT智能家居项目的代码 在我看来,QT MQTT的使用主要难点就是对于环境的搭建,在我们把环境搭建完之后,接下来就是传统手艺了,我们只要知道相应的库函数,调用它,就能实现我们所需要的功能了。 所以,在这里我也只是简单的分享一下我写的第一版

    2024年02月16日
    浏览(52)
  • 你相信光吗?开源一个能进行虚拟光渲交互的全志D1s智能家居中控

    本文所介绍产品demo是在立创开源平台的开源作品**《全志D1s智能家居中控虚拟光渲交互(86盒)》**,项目选用RISC-V核心的全志D1s作为主控进行开发,并通过家庭WIFI内网,实现设备间MQTT通信,与其它开源单片机控制项目进行充分联动, 旨在推广类似客制化键盘概念到智能家居领

    2024年02月02日
    浏览(38)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包