智能终端-Qt-课程设计分析

这个是几个简单的Qt的智能终端分享,其是我们上课的作业,我就在老师要求的基础上去进行了延申了一点的,下面看做了哪些东西

  1. 这个是所有的点开之后的页面,我做到了那些家居和那个按钮达到了同步的效果,这点其实还是不错的

然后就是当你点击了关灯之后会出现什么呢? 只不过是换了一张图而已

对了,我们还一个电视呢?其实对于这个电视我起初设置的GIF的动图,其实也是可以去实现的,但是能够切换但是却切换不过来,因为那个GIF是一个Label,但是那个我是使用按钮进行点击的,所以是不行的,但是我并没有去删掉

当你点击了电源的按钮的时候会发现所有的家居都进行关闭了,这个也是我对它进行了处理

此时你再去点击其他的一些操作的时候是出现问题的,就是说你不能去进行点击,因为我们已经把电闸给关掉了

你以为到这就结束了吗,其实并没有,我对空调进行了倒计时的处理,毕竟大家都喜欢节约用电对吧,当你点击之后会出现模式选择

或者进行倒计时,这个但是我写的有问题,不能使用这个

但是你可以去通过左下角的那个按钮去定时,然后会显示时间的,显示倒计时的状态显示,当计时结束之后会进行显示计时结束的提醒和关闭空调的。

对了,忘记看我的普普通通的登录了

目前是做成这个样子,不知道后续无聊的时候会不会继续的做下去,至少这次的课设已经足够了,其实怎么说呢,我对这个代码还是蛮用心的,之前学过一点点,但是不是主业,还有就是我的bug和那个回家模式没有写完,这个是我最大的遗憾了,哈哈哈哈哈,整个文章中其实是没有提到代码的,我还是比较用心的吧,给大家看一小段

!![](https://img-blog.csdnimg.cn/direct/000fe54cf0b54f6c80b1ab382aee7a2f.png)

因为整个程序中涉及到很多的调用,那样多麻烦啊,直接封装好,然后去调用不是很舒服的嘛

cpp 复制代码
//总电闸控制开关
void Widget::on_controlElect_clicked()
{
    if(statusFlag=="0"){
        controlImageChangeElect("ON");
        controlElectricImage("通电","ON");
        statusFlag="1";
    }else{
        //将总电闸关闭了,这个时候所有的设备都应该是进行的是不能正常通电的情况了
        QMessageBox *msgBox = new QMessageBox;
        msgBox->setWindowTitle("关闭提示");
        msgBox->setText("确定要关闭所有的设备吗");
        msgBox->setStandardButtons(QMessageBox::Ok|QMessageBox::Cancel);
        int result = msgBox->exec();
        if(result==QMessageBox::Ok){
            controlElectricImage("断电","OFF");
            controlRefrigeratorImage("关闭冰箱","OFF"); //设备状态
            controlWIFIImage("关闭WIFI","OFF");
            controlAirconditionImage("关闭空调","OFF");
            controlLampImage("关灯","OFF");
            ui->widget->setStyleSheet(QString("border-image: url(:/tu/backGroundDark.jpg)"));
            controlHomeImage("停电了","OFF");
            controlTVImage("关闭电视","OFF");

            ui->controlDianShi->setStyleSheet("border-image: url(:/picture/swtichOFF.png);");//电视的按钮图标进行关闭
            controlImageChangeElect("OFF");//开关按钮图标状态
            controlImageChangeHome("OFF");
            controlImageChangeWIFI("OFF");
            controlImageChangeRefri("OFF");
            controlImageChangeAir("OFF");
            controlImageChangeLamp("OFF");
        }
        statusFlag="0";
    }
}
cpp 复制代码
//对于开关WiFi的设置
void Widget::on_toolButton_6_clicked()
{
    if(roomToolOpen=="0"){
        controlWIFIImage("关闭WIFIing","OFF");
        controlImageChangeWIFI("OFF");
        roomToolOpen="1";
    }else{
        controlWIFIImage("打开WIFIing","ON");
        controlImageChangeWIFI("ON");
        roomToolOpen="0";
    }
}

其实上述的这两个其实已经把我思想给表达出来了,毕竟我在所有语言中花费的时间最长的不是C++,哈哈,就分享到这。如果对我这个这个作业感兴趣可以在后台去私聊我。同时如果有很好地想法可以在下面的留言中指出,大家一起学习和进步。

相关推荐
梦想平凡2 小时前
PHP 微信棋牌开发全解析:高级教程
android·数据库·oracle
TianyaOAO2 小时前
mysql的事务控制和数据库的备份和恢复
数据库·mysql
Ewen Seong2 小时前
mysql系列5—Innodb的缓存
数据库·mysql·缓存
码农老起2 小时前
企业如何通过TDSQL实现高效数据库迁移与性能优化
数据库·性能优化
夏木~3 小时前
Oracle 中什么情况下 可以使用 EXISTS 替代 IN 提高查询效率
数据库·oracle
W21554 小时前
Liunx下MySQL:表的约束
数据库·mysql
黄名富4 小时前
Redis 附加功能(二)— 自动过期、流水线与事务及Lua脚本
java·数据库·redis·lua
言、雲4 小时前
从tryLock()源码来出发,解析Redisson的重试机制和看门狗机制
java·开发语言·数据库
云空4 小时前
《QT 5.14.1 搭建 opencv 环境全攻略》
开发语言·qt·opencv
一个程序员_zhangzhen4 小时前
sqlserver新建用户并分配对视图的只读权限
数据库·sqlserver