2月9日QT

優化登錄框:

當用戶點擊取消按鈕,彈出問題對話框,詢問是否要確定退出登錄,并提供兩個按鈕,yes|No,如果用戶點擊的Yes,則關閉對話框,如果用戶點擊的No,則繼續登錄

當用戶點擊的登錄按鈕,進行賬號和密碼的匹配,如果匹配成功,則彈出信息對話框,給出信息為,登錄成功,并給出一個確定按鈕,當用戶點擊該按鈕后,關閉登錄界面,彈出另一個界面

當賬號和密碼不匹配是,給出錯誤對話框,給出信息為賬號和密碼不匹配,是否重新登錄,并提供兩個按鈕 Yes|No,如果用戶點擊了Yes,則清空密碼框后,繼續登錄。如果用戶點擊的取消,則關閉登錄界面

要求:靜態成員函數版本和對象版本各至少實現一個

頭文件:

#ifndef WIDGET_H
#define WIDGET_H#include <QWidget>
#include<QPushButton> //按鍵類頭文件
#include<QLabel>     //標題類頭文件
#include<QLineEdit>  //行編輯器頭文件
#include<QDebug>     //輸出類頭文件
#include<QMessageBox> //對話框類頭文件
class Widget : public QWidget
{Q_OBJECTpublic slots:void clicked_slot();signals:void jump();public:Widget(QWidget *parent = nullptr);~Widget();private:QLabel *lab1;QLabel *lab2;QLabel *lab3;QLineEdit *edit1;QLineEdit *edit2;QPushButton *btn1;QPushButton *btn2;
};
#endif // WIDGET_H

源文件:

#include "widget.h"Widget::Widget(QWidget *parent): QWidget(parent)
{//設置整個界面resize(400,500);setWindowIcon(QIcon(":/pictrue/qq2.gif"));setWindowTitle("KK快聊");//給lable1實例化空間并設置(logo)lab1= new QLabel("logo",this);lab1->resize(400,160);lab1->setPixmap(QPixmap(":/pictrue/zz.gif"));lab1->setScaledContents(true);//給lable2實例化空間并設置(賬號)lab2= new QLabel("賬號",this);lab2->resize(50,40);lab2->move(40,200);//給lable3實例化空間并設置(密碼)lab3= new QLabel("密碼",this);lab3->resize(lab2->size());lab3->move(lab2->x(), lab2->y()+lab2->height()+10);//給edit1實例化空間并設置(輸入賬號)edit1=new QLineEdit(this);edit1->resize(200, 40);edit1->move(100,200);edit1->setAlignment(Qt::AlignCenter);        //設置對齊方式edit1->setPlaceholderText("請輸入賬號");      //設置占位文本//給edit2實例化空間并設置(輸入密碼)edit2=new QLineEdit(this);edit2->resize(edit1->size());edit2->move(edit1->x(), edit1->y()+edit1->height()+10);edit2->setAlignment(Qt::AlignCenter);        //設置對齊方式edit2->setPlaceholderText("請輸入密碼");      //設置占位文本edit2->setEchoMode(QLineEdit::Password);      //設置回顯模式//給btn1實例化空間并設置(登錄)btn1 = new QPushButton("登錄", this);btn1->resize(50,30);btn1->move(140,400);//給btn2實例化空間并設置(取消)btn2 = new QPushButton("取消", this);btn2->resize(btn1->size());btn2->move(btn1->x()+btn1->width()+10, btn1->y());//將登陸按鈕的clicked信號連接到自定義的槽函數QObject::connect(btn1,&QPushButton::clicked,this,&Widget::clicked_slot);//設置取消按鍵的clicked信號QObject::connect(btn2, &QPushButton::clicked, [this](){//實例化一個問題對話框的對象QMessageBox box(QMessageBox::Question,"問題對話框","是否確定退出登錄",QMessageBox::Yes|QMessageBox::No,this);//調用exec函數,將對話框顯示出來int res=box.exec();if(res==QMessageBox::Yes){close();}});}//登陸按鈕點擊信號的槽函數
void Widget::clicked_slot()
{//獲取賬號密碼QString usrname =edit1->text();QString pwd =edit2->text();//判斷賬號和密碼是否一致if(usrname==pwd){//調用靜態成員函數,創建一個信息對話框QMessageBox::information(this,"信息對話框","登錄成功",QMessageBox::Ok);close();emit jump();}else{//實例化一個問題對話框的對象QMessageBox box(QMessageBox::Question,"問題對話框","賬號與密碼不匹配,是否重新登錄",QMessageBox::Yes|QMessageBox::No,this);//調用exec函數,將對話框顯示出來int res=box.exec();if(res==QMessageBox::Yes){edit2->clear();}else if(res==QMessageBox::No){close();}}
}Widget::~Widget()
{
}

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/895140.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/895140.shtml
英文地址,請注明出處:http://en.pswp.cn/news/895140.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

安卓路由與aop 以及 Router-api

安卓路由&#xff08;Android Router&#xff09;和AOP&#xff08;面向切面編程&#xff09;是兩個在Android開發中常用的概念。下面我將詳細講解這兩個概念及其在Android開發中的應用。 一、安卓路由 安卓路由主要用于在應用程序中管理不同組件之間的導航和通信。它可以簡化…

大模型賦能網絡安全整體應用流程概述

一、四個階段概述 安全大模型的應用大致可以分為四個階段: 階段一主要基于開源基礎模型訓練安全垂直領域的模型; 階段二主要基于階段一訓練出來的安全大模型開展推理優化、蒸餾等工序,從而打造出不同安全場景的專家模型,比如數據安全領域、安全運營領域、調用郵件識別領…

nexus部署及配置https訪問

1. 使用docker-compose部署nexus docker-compose-nexus.yml version: "3" services:nexus:container_name: my-nexusimage: sonatype/nexus3:3.67.1hostname: my-nexusnetwork_mode: hostports:- 8081:8081deploy:resources:limits:cpus: 4memory: 8192Mreservations…

史上最快 Python版本 Python 3.13 安裝教程

Python3.13安裝和配置 一、Python的下載 1. 網盤下載地址 (下載速度比較快&#xff0c;推薦&#xff09; Python3.13.0下載&#xff1a;Python3.13.0下載地址&#xff08;windows&#xff09;3.13.0下載地址&#xff08;windows&#xff09; 點擊下面的下載鏈接&#xff0c…

Docker從入門到精通- 容器化技術全解析

第一章&#xff1a;Docker 入門 一、什么是 Docker&#xff1f; Docker 就像一個超級厲害的 “打包神器”。它能幫咱們把應用程序和它運行所需要的東東都整整齊齊地打包到一起&#xff0c;形成一個獨立的小盒子&#xff0c;這個小盒子在 Docker 里叫容器。以前呢&#xff0c;…

ProcessingP5js數據可視化

折線圖繪制程序設計說明 可以讀取表格數據&#xff0c;并轉換成折線圖&#xff0c;條形圖和餅狀圖&#xff0c;并設計了銜接動畫效果 1. 功能概述 本程序使用 Processing 讀取 CSV 文件數據&#xff0c;并繪制帶有坐標軸和數據點的折線圖。橫坐標&#xff08;X 軸&#xff09…

使用云計算,企業的數據監管合規問題如何解決?

使用云計算&#xff0c;企業的數據監管合規問題如何解決&#xff1f; 在當今這個信息化、數字化的時代&#xff0c;數據無疑成為了企業最寶貴的資產之一。隨著云計算的普及&#xff0c;企業將大量數據存儲在云端&#xff0c;不僅提升了效率&#xff0c;也帶來了更多靈活性。然…

AWS Fargate

AWS Fargate 是一個由 Amazon Web Services (AWS) 提供的無服務器容器計算引擎。它使開發者能夠運行容器化應用程序&#xff0c;而無需管理底層的服務器或虛擬機。簡而言之&#xff0c;AWS Fargate 讓你只需關注應用的容器本身&#xff0c;而不需要管理運行容器的基礎設施&…

vue3+vite+eslint|prettier+elementplus+國際化+axios封裝+pinia

文章目錄 vue3 vite 創建項目如果創建項目選了 eslint prettier從零教你使用 eslint prettier第一步&#xff0c;下載eslint第二步&#xff0c;創建eslint配置文件&#xff0c;并下載好其他插件第三步&#xff1a;安裝 prettier安裝后配置 eslint (2025/2/7 補充) 第四步&am…

vLLM V1 重磅升級:核心架構全面革新

本文主要是 翻譯簡化個人評讀&#xff0c;原文請參考&#xff1a;vLLM V1: A Major Upgrade to vLLM’s Core Architecture vLLM V1 開發背景 2025年1月27日&#xff0c;vLLM 開發團隊推出 vLLM V1 alpha 版本&#xff0c;這是對框架核心架構的里程碑式升級。基于過去一年半的…

Jupyter Notebook自動保存失敗等問題的解決

一、未生成配置文件 需要在命令行中&#xff0c;執行下面的命令自動生成配置文件 jupyter notebook --generate-config 執行后會在 C:\Users\用戶名\.jupyter目錄中生成文件 jupyter_notebook_config.py 二、在網頁端打開Jupyter Notebook后文件保存失敗&#xff1b;運行代碼…

使用wpa_supplicant和wpa_cli 掃描wifi熱點及配網

一&#xff1a;簡要說明 交叉編譯wpa_supplicant工具后會有wpa_supplicant和wpa_cli兩個程序生產&#xff0c;如果知道需要連接的wifi熱點及密碼的話不需要遍歷及查詢所有wifi熱點的名字及信號強度等信息的話&#xff0c;使用wpa_supplicant即可&#xff0c;否則還需要使用wpa_…

Flink (十七) :Table API SQL (五) 時區

Flink 為日期和時間提供了豐富的數據類型&#xff0c; 包括 DATE&#xff0c; TIME&#xff0c; TIMESTAMP&#xff0c; TIMESTAMP_LTZ&#xff0c; INTERVAL YEAR TO MONTH&#xff0c; INTERVAL DAY TO SECOND 。 Flink 支持在 session &#xff08;會話&#xff09;級別設置…

【真一鍵部署腳本】——一鍵部署deepseek

目錄 deepseek一鍵部署腳本說明 0 必要前提 1 使用方法 1.1 使用默認安裝配置 1.1 .1 使用其它ds模型 1.2 使用自定義安裝 2 附錄&#xff1a;deepseek模型手動下載 3 腳本下載地址 deepseek一鍵部署腳本說明 0 必要前提 linux環境 python>3.10 1 使用方法 1.1 …

5.2Internet及其作用

5.2.1Internet概述 Internet稱為互聯網&#xff0c;又稱英特網&#xff0c;始于1969年的美國ARPANET&#xff08;阿帕網&#xff09;&#xff0c;是全球性的網絡。 互連網指的是兩個或多個不同類型的網絡通過路由器等網絡設備連接起來&#xff0c;形成一個更大的網絡結構。互連…

“圖像識別分割算法:解鎖視覺智能的關鍵技術

嘿&#xff0c;各位朋友&#xff01;今天咱們來聊聊圖像識別分割算法。這可是計算機視覺領域里特別厲害的一項技術&#xff0c;簡單來說&#xff0c;它能讓機器“看懂”圖像中的不同部分&#xff0c;并把它們精準地分出來。想象一下&#xff0c;機器不僅能識別出圖里有貓還是狗…

AJAX項目——數據管理平臺

黑馬程序員視頻地址&#xff1a; 黑馬程序員——數據管理平臺 前言 功能&#xff1a; 1.登錄和權限判斷 2.查看文章內容列表&#xff08;篩選&#xff0c;分頁&#xff09; 3.編輯文章&#xff08;數據回顯&#xff09; 4.刪除文章 5.發布文章&#xff08;圖片上傳&#xff0…

html轉PDF文件最完美的方案(wkhtmltopdf)

目錄 需求 一、方案調研 二、wkhtmltopdf使用 如何使用 文檔簡要說明 三、后端服務 四、前端服務 往期回顧 需求 最近在做報表類的統計項目&#xff0c;其中有很多指標需要匯總&#xff0c;網頁內容有大量的echart圖表&#xff0c;做成一個網頁去瀏覽&#xff0c;同時…

示例:JAVA調用deepseek

近日&#xff0c;國產AI DeepSeek在中國、美國的科技圈受到廣泛關注&#xff0c;甚至被認為是大模型行業的最大“黑馬”。在外網&#xff0c;DeepSeek被不少人稱為“神秘的東方力量”。1月27日&#xff0c;DeepSeek應用登頂蘋果美國地區應用商店免費APP下載排行榜&#xff0c;在…

.NET周刊【2月第1期 2025-02-02】

國內文章 dotnet 9 已知問題 默認開啟 CET 導致進程崩潰 https://www.cnblogs.com/lindexi/p/18700406 本文記錄 dotnet 9 的一個已知且當前已修問題。默認開啟 CET 導致一些模塊執行時觸發崩潰。 dotnet 使用 ColorCode 做代碼著色器 https://www.cnblogs.com/lindexi/p/…