Qt creator day4练习

Qt Creator在飞凌RK3568上的终极配置指南:从安装到工程配置一步到位 本文详细介绍了如何在飞凌RK3568开发板上配置Qt Creator开发环境,包括Qt 5.14.2的安装、交叉编译工具链的设置以及工程部署的全流程。通过本指南,开发者可以快速搭建高效的嵌入式GUI开发环境,解决常见配置问题,并优化性能。 阅读详情

完善对话框,点击登录对话框,如果账号和密码匹配,则弹出信息对话框,给出提示”登录成功“,提供一个Ok按钮,用户点击Ok后,关闭登录界面,跳转到其他界面

如果账号和密码不匹配,弹出错误对话框,给出信息”账号和密码不匹配,是否重新登录“,并提供两个按钮Yes|No,用户点击Yes后,清除密码框中的内容,继续让用户进行登录,如果用户点击No按钮,则直接关闭登录界面

如果用户点击取消按钮,则弹出一个问题对话框,给出信息”您是否确定要退出登录?“,并给出两个按钮Yes|No,用户点击Yes后,关闭登录界面,用户点击No后,关闭对话框,继续执行登录功能

要求:(基于属性版、静态成员函数都使用)实现对话框的弹出

widget.h

#ifndef WIDGET_H
#define WIDGET_H

#include <QWidget>
#include <QMessageBox>

QT_BEGIN_NAMESPACE
namespace Ui { class Widget; }
QT_END_NAMESPACE

class Widget : public QWidget
{
    Q_OBJECT

public:
    Widget(QWidget *parent = nullptr);
    ~Widget();
signals:
    void my_signal();  //信号函数的声明
    void my_jump();  //第一个界面的跳转信号

private slots:
    void on_pushButton_2_clicked();

    void on_pushButton_3_clicked();

    void on_pushButton_clicked();

    void on_pushButton_4_clicked();

private:
    Ui::Widget *ui;
};
#endif // WIDGET_H

second.h

#ifndef SECOND_H
#define SECOND_H

#include <QWidget>

namespace Ui {
class Second;
}

class Second : public QWidget
{
    Q_OBJECT

public:
    explicit Second(QWidget *parent = nullptr);
    ~Second();

public slots:
    void jump_slot(); //第二个界面准备的槽函数

private:
    Ui::Second *ui;
};

#endif // SECOND_H

main.cpp

#include "widget.h"
#include "second.h"  //包含第二个头文件

#include <QApplication>

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    Widget w;
    w.show();

    Second s; //实例化第二个界面
    QObject::connect(&w, &Widget::my_jump, &s, &Second::jump_slot);
    return a.exec();
}

widget.cpp

#include "widget.h"
#include "ui_widget.h"

Widget::Widget(QWidget *parent)
    : QWidget(parent)
    , ui(new Ui::Widget)
{
    ui->setupUi(this);

    //将自定义的信号和Lambda表达式连接
    connect(this,&Widget::my_signal,[=](){

        //ui->resize(ui->width()+10,ui->height()+10);
    });
    //去掉头部
    this->setWindowFlag(Qt::FramelessWindowHint);

    //去掉空白部分
    this->setAttribute(Qt::WA_TranslucentBackground);
    connect(ui->lineEdit_2,SIGNAL(returnPressed()),ui->pushButton  //回车键登录
            ,SIGNAL(clicked()),Qt::UniqueConnection);

}

Widget::~Widget()
{
    delete ui;
}


void Widget::on_pushButton_2_clicked()
{
    this->close();
}

void Widget::on_pushButton_3_clicked()
{
    this->showMaximized();
}

void Widget::on_pushButton_clicked()
{
    if(QString(ui->lineEdit->text()) == "admin" && QString(ui->lineEdit_2->text()) == "123456")
    {
        //弹出信息对话框
        //使用静态成员函数
        QMessageBox::information(this,"提示","登录成功",QMessageBox::Ok);
        this->close();
        emit my_jump(); // 触发信号
    }
    else
    {
        //弹出错误对话框
        //使用类属性(数据成员)
        QMessageBox msg(QMessageBox::Critical,"错误","账号或者密码错误,是否重新登入",QMessageBox::Yes | QMessageBox::No);
        //调用exec()弹出对话框
        int ret = msg.exec();
        //根据用户的选择,执行不同的功能
        if(ret == QMessageBox::Yes)
        {
            ui->lineEdit->setText("");
            ui->lineEdit_2->setText("");
        }
        else
        {
            this->close();
        }

    }
}

void Widget::on_pushButton_4_clicked()
{
    this->showMinimized();
}

second.cpp

#include "second.h"
#include "ui_second.h"

Second::Second(QWidget *parent) :
    QWidget(parent),
    ui(new Ui::Second)
{
    ui->setupUi(this);
}

Second::~Second()
{
    delete ui;
}

void Second::jump_slot()
{
    //显示
    this->show();
}

现象

seatwork1

基于CNN网络的轴承故障诊断 内容参考:《基于卷积神经网络的轴承故障 诊断算法研究》–张伟 代码参考: https://github.com/AaronCosmos/wdcnn_bearning_fault_diagnosis 1 背景: 基于信号处理的特征提取+分类器的传统智能诊断算法,对专家经验要求高,设计耗时且不能保证通用性,已经不能满足机械大数据的要求。提出使用基于卷积神经网络智能诊断算法来自动完成特征提取以及故障识别。 1.1 挑战 机电产品故障诊断面临的挑战,有三大特点: (1)数据量大,专业分析人员的数量严重不足,仅依靠人 阅读详情

相关推荐

STM32驱动AD2S1210实现旋变解码与角度读取

旋转变压器作为一种耐高温、抗振动的角度传感器,在工业伺服、机器人关节和电动汽车电驱等场景中占据重要地位。其输出信号需要经过专用转换芯片处理才能被MCU高效使用。AD2S1210是一款典型的旋变数字转换器(RDC),内部采用Type II型跟踪环,将模拟SIN/COS信号实时解算为数字角度与速度,降低了处理器负担并提升抗干扰能力。本文基于STM32平台,详细介绍了AD2S1210的硬件接线、SPI通信配置、寄存器初始化流程,以及读取位置数据时的SAMPLE脉冲时序等关键实现。同时总结了常见故障如全FF、角度跳

weixin_34194829的博客 196

Qt creator day2练习

使用手动连接,将登录框中的取消按钮使用第二种方式,右击转到槽,在该函数中,调用关闭函数,将登录按钮使用Qt4版本的连接到自定义的槽函数中,在槽函数中判断ui界面上输入的账号是否为“admin”,密码是否为“123456”,如果账号密码匹配成功,则输出“登录成功”,并关闭该界面,如果匹配失败,则输出登录失败,并将密码框中的内容清空。

M_ningee21的博客 613

BOE CHPI协议解析:高速显示驱动的核心技术

本文深入解析了BOE CHPI协议,这是一种为高分辨率、高刷新率显示面板设计的时钟嵌入式高速点对点接口技术。文章详细阐述了其三层架构(物理层、链路层、协议层)、核心机制(如链路训练与BCC通道)以及如何通过高速串行差分传输解决大尺寸屏幕内部数据传输的带宽与干扰难题,是驱动8K、窄边框等高端显示应用的关键核心技术。

m9n0o的博客 545

Qt creator day3练习

4. 如果账号密码正确,则实现登录界面关闭,另一个应用界面显示。2. 需要有图层的叠加 (QFrame)3. 设置纯净窗口后,有关闭等窗口功能。2、升级优化自己应用程序的登录界面。要求: 1. qss实现。

M_ningee21的博客 341

QCC308x/3095收发一体:TX/RX双模一拖二与多编码广播实战解析

本文深度解析高通QCC308x/3095蓝牙音频芯片的TX/RX双模功能与广播应用。芯片支持发射和接收模式下的“一拖二”连接,并能实现LE Audio多设备广播,显著提升多设备音频切换体验与商业广播能力,适用于健身、导览等丰富场景。

g9h0i1的博客 1006

从Mule ESB到Apache Camel:手把手教你设计一个轻量级企业集成框架的‘心脏’

本文深入探讨了从Mule ESB到Apache Camel的轻量级企业集成框架设计实践,对比了两者在协议支持、消息处理能力和部署灵活性等方面的差异。通过实际代码示例和性能优化技巧,帮助开发者构建高效的核心模块,适用于现代微服务架构下的系统集成需求。

weixin_28738165的博客 375

Qt creator day1 练习

自由发挥登录窗口的应用场景,实现一个登录窗口界面,要求:第行代码都有注释。

M_ningee21的博客 363

【python股票价格预测】基于LSTM(长短期记忆网络)的股票价格预测(附python代码)

【python股票价格预测】基于LSTM(长短期记忆网络)的股票价格预测(附python代码)

k8291121的博客 1013

Qt creator day5练习

如果有新的客户端连接 调用QTcpSocket *QTcpServer::nextPendingConnection()得到通信的套接字对象。基于QTcpServer::newConnection()信号检测是否有新的客户端连接。通过QTcpServer对象设置监听,即QTcpServer::listen()使用通信的套接字对象QTcpSocket和客户端进行通信。创建套接字服务器QTcpServer对象。Qt 中实现TCP 聊天服务器。

M_ningee21的博客 404

Android日志实战——车机日志获取(十五)

这个项目中的 Log 管理系统,其实只是将系统原生 Log 进行输出并导出,并没有太复杂的操作。还有一种 Log 管理系统需要对 Android 原生 Log 系统进行重写,例如我们使用 Log.d(tag, msg) 打印 Log,需要我们根据 tag 信息将不同模块的 Log 数据写入不同的本地文件下,这样可以方便不同模块查看自己的 Log,追踪异常问题。

小旭的专栏 3780

27、物联网中的量子密钥分发:安全通信新范式

本文探讨了物联网(IoT)快速发展所带来的安全挑战,并提出量子密钥分发(QKD)作为应对新兴威胁的新范式。文章详细介绍了QKD的基础原理、BB84协议的实现流程以及其在物联网中的应用前景,同时强调了安全专业人员提升技能、制定标准化指南以及跨学科合作的重要性。通过利用量子力学特性,QKD能够提供更高的通信安全性,抵御量子计算等未来威胁,为物联网的安全发展提供保障。

tequila的博客 157

Qt学习c++

Qt学习C++平台及版本day01 HelloWorld程序生成day02 分析第一个Qt程序1) main.cpp2) mainwindow.h和mainwindow.cpp 平台及版本 【qt】版本:4.5x 【vs】版本:vs2015 【语言】:c++ day01 HelloWorld程序生成 单击 Qt Creator 的菜单项文件->新建文件或项目,出现如图 1 所示的对话框。在这个对话框里选择需要创建的项目或文件的模板 对话框中选择项目类型为 Qt Widgets Application

DZD的博客 6238

Allegro172版本多人协同在线设计操作指导

首先用户需要在同一个局域网下,并且Allegro172的版本必须一致,比如都是S082的版本。另外一个用户同样打开相同版本的172,选择Symphony Team design。Allegro升级到172版本,可以支持多人协同设计,并且实时同步,具体操作如下。协同模式下,不能直接保存文件,需要另存版本,注意时常保存文件,以免丢失数据。第一个用户打开PCB,选择Symphony Team design。等待一会出现如下窗口,表示已经共享成功了,并且记下IP地址。出现一个窗口,输出开共享用户的IP地址。

weixin_54787054的博客 4954

QT学习和代码练习

常用方法:setParent(this)(依赖窗口)、setText("文本")、setStyleSheet("背景色")、move(100,100)(位置)、resize(150,200)(大小)、setIcon(QIcon("路径"))、setEnabled(false)(禁用)方法:this->size()(整体大小)、this->width()(宽)、this->height()(高)、this->size().width()/height()btn1->setText("第一个按钮");

Limit_yang的博客 997

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

day01(Qt)Qt简介

Qt简介

QR70892的博客 1388

Qt day01

信号和槽

weixin_61180910的博客 1315

Qt自学day01

自学Qt-DAY01

Jin小恒的Blog 240

【Qt】学习Day1

本文章介绍了自定义信号与槽的基础使用、lambda表达式和qt的基本介绍。qt自学打卡第一天。

2201_75475240的博客 1439

QT day3

【QTextBrowser(熟悉)】 适合多次追加append的文本显示。 带有一个可以拖动的进度条。 【QLineEdit(掌握)】 用于键盘输入字符。 部分属性: text 文字 maxLength 最大长度 echoMode 回显模式(普通、无回显、密文、密文2) readOnly 只读,个人建议使用QWidget的enabled属性代替。 placeHolderText 提示文字 【QSpinBox(熟悉)】 部分属性: minimum 最小...

haogewudi666的博客 1477

Qt项目文件 Qt入门day1

.pro #模块,注释用# #当你每加一个头文件时,需要加相应的模块,在头文件处按f1可以在帮助文档中看到对应的模块 QT += core gui #高于qt4的版本,为了兼容Qt4 greaterThan(QT_MAJOR_VERSION, 4): QT += widgets CONFIG += c++11 DEFINES += QT_DEPRECATED_WARNINGS ...

wdshhh的博客 195

C++学习笔记day52-----Qt-designer、qtcreator

designer、qtcreator

displayMessage的博客 3092

Qt 学习记录 Day-1

下面是三个选项的含义:勾选Generate form, Qt Creator会自动创建窗体文件(form)创建完成后目录树如下打开widget.ui即可进行界面设计。

2401_84377346的博客 741

QT编程-day1

初识QT,觉得和Objective-C的语言风格很相似,上手比较容易。QT是跨平台的开发库,主要开发GUI,也可以开发CUI,QT支持各种平台,windows,linux,IOS,android,winphone以及嵌入式系统等应用广泛。除过本身包含的功能模块,还有第三方模块补充。除过与操作系统结合特别紧密的,需要操作系统本身的函数库实现之外,其他大部分的应用程序都可以用QT实现。其中对于传统桌面应

Lady_gala的专栏 627

QT学习之基础Day1(自用)

1.Qt是什么? Qt(官方发音 [kju:t],音同 cute)是一个跨平台的 C++ 开发库,主要用来开发图形用户界面(Graphical User Interface,GUI)程序,当然也可以开发不带界面的命令行(Command User Interface,CUI)程序。 Qt 是纯 C++ 开发的,所以学好 C++ 非常有必要,Qt 还存在 Python、Ruby、Perl 等脚本语言的绑定, 也就是说可以使用脚本语言开发基于 Qt 的程序。开源社区就是这样,好东西就会被派生扩展,到处使用, 越来

linxiao0915的博客 1180

qtcreator连接mysql数据库驱动成功经验分享 QT6 B站qt课

本文分享了在Qt Creator 6.9.1连接MySQL 9.4时遇到的问题及解决方案。由于Qt6没有内置MySQL驱动,需要手动构建或下载匹配版本的驱动文件(注意Qt5和Qt6的构建方式不同)。作者通过参考多个技术博客,最终将正确的dll文件放入bin目录,并将驱动文件放置到指定路径(Qt/6.4.2/mingw_64/plugins/sqldrivers)成功解决问题。文中推荐了几个实用的参考链接,特别提醒版本匹配的重要性,建议使用GitHub上现成的驱动文件或自行构建。(148字)

bananen的博客 547

Qt Creator快捷键

1 .Ctrl(按住)+ Tab快速切换已打开的文件 2 .快速添加方法实体(.cpp)声明, 将光标移动到h文件中的方法声明。按Alt(按住)+ Enter,再按回车键将在cpp中添加该函数的声明。 3 .修改变量名,并应用到所有使用该变量的地方。 将光标移动到需要更改的变量上,按Ctrl + Shift + R,当前变量名称外框为红色时,表示已经已激活全局修改功能,当修改此处变量名称时...

weixin_30689307的博客 161

day_03_QT设计师、创造器

七、设计师的使用 案例一、使用设计师重构加法计算器 案例二、登录对话框 八、QT创造器的使用qtcreator

幻影maple的博客 604
上一篇: Qt creator day3练习
下一篇: Qt creator day5练习
风铃响了
博客等级 码龄4年 76粉丝 56原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值