QT - 20230707

news/2024/12/23 6:08:56/

登录界面练习

#include "loginwindow.h"QIcon fetchIconWithName(QString name) {QString res = "../login/images/" + name;return QIcon(res);
}LoginWindow::LoginWindow(QWidget *parent): QMainWindow(parent)
{this->resize(600, 800);this->setWindowIcon(fetchIconWithName("QQ.png"));this->setWindowTitle("登录界面");this->setStyleSheet("background-color:white");int offsetX = 0, offsetY = 10;//LOGOQLabel *logoLabel = new QLabel(this);logoLabel->setPixmap(QPixmap("../login/images/logo.png"));logoLabel->setGeometry((this->width()-480)/2, offsetY, 480, 266);offsetY += 266;offsetY += 20;//登录框offsetX = (this->width()-260)/2;QLabel *loginIcon = new QLabel(this);loginIcon->setPixmap(QPixmap("../login/images/userName.jpg"));loginIcon->setScaledContents(true);loginIcon->setGeometry(offsetX, offsetY, 50, 50);offsetX += (50+10);QLineEdit *loginInput = new QLineEdit(this);loginInput->setPlaceholderText("请输入用户名");loginInput->setGeometry(offsetX, offsetY, 200, 50);loginInput->setStyleSheet("border:none");QWidget *loginBottomLine = new QWidget(this);loginBottomLine->setStyleSheet("background-color:black");loginBottomLine->setGeometry(loginInput->x(), loginInput->y()+loginInput->height(), loginInput->width(), 1);offsetY += (50+10);offsetX = (this->width()-260)/2;QLabel *passwdIcon = new QLabel(this);passwdIcon->setPixmap(QPixmap("../login/images/passwd.jpg"));passwdIcon->setScaledContents(true);passwdIcon->setGeometry(offsetX, offsetY, 50, 50);offsetX += (50+10);QLineEdit *passwdInput = new QLineEdit(this);passwdInput->setPlaceholderText("请输入密码");passwdInput->setGeometry(offsetX, offsetY, 200, 50);passwdInput->setEchoMode(QLineEdit::Password);passwdInput->setStyleSheet("border:none");QWidget *passwdBottomLine = new QWidget(this);passwdBottomLine->setStyleSheet("background-color:black");passwdBottomLine->setGeometry(passwdInput->x(), passwdInput->y()+passwdInput->height(), passwdInput->width(), 1);offsetY += 60;offsetX = (this->width()-150)/2;QPushButton *loginBtn = new QPushButton(this);loginBtn->setIcon(fetchIconWithName("login.png"));loginBtn->setIconSize(QSize(50, 50));loginBtn->setGeometry(offsetX, offsetY, 50, 50);offsetX += (50 + 20);QPushButton *cancelBtn = new QPushButton(this);cancelBtn->setIcon(fetchIconWithName("cancel.png"));cancelBtn->setIconSize(QSize(50, 50));cancelBtn->setGeometry(offsetX, offsetY, 50, 50);offsetY += 70;this->resize(this->width(), offsetY);}LoginWindow::~LoginWindow()
{}

结果展示:
在这里插入图片描述

在这里插入图片描述


http://www.ppmy.cn/news/845651.html

相关文章

关于VUE.JS

《Vue.js 实战入门》 本书是 Vue.js 系列实战课程里的第一本,课程代号 V01。本课程通过实战的方式,带你进入 Vue.js 的世界,与作者一起一步步打造一个完整的 Vue.js 项目。 将会涉及以下知识点的讲解: 使用构建工具模板语法计算属性和侦听器Class 与 Style 绑定条件渲染和…

通话记录分析 --- 查询

1.2 查询通话记录 CallLogFragment的fetchCalls调用流程图如下, fetchCalls方法如下, public void fetchCalls() {mCallLogQueryHandler.fetchCalls(mCallTypeFilter, mDateLimit); }CallLogQueryHandler有不同参数的fetchCalls方法,最后的fetchCalls方法主要逻辑如下, 1,构…

通话记录分析

1,通话记录 1.1 初始化 在Dialer中,通话记录信息都是通过CallLogActivity 显示,实际上,真正完成的是CallLogFragment 。CallLogActivity的内部类 ViewPagerAdapter的getItem方法如下, public Fragment getItem(int position) {switch (getRtlPosition(position)) {case TAB_…

selenium+phantomjs 爬虫 获取中国移动,电信,联通通话记录

主要获取中国电信,中国移动,联通通话记录 提取征信维度,使用seleniumphantomjs完成对网站数据的爬取,由于phantomjs不符合 分布式爬取要求,所以自己动手重构了phantomjs的源码 http://git.oschina.net/wds/contact 有任何问题欢…

python语音对话查询起始路和目的地_查询通话记录详情

实现方法 在调用API实现该功能前,您需要完成以下操作: 购买语音号码并审核通过语音模板或语音文件,具体操作请参见快速入门。 获取AccessKey信息,详情请参见获取AccessKey。 完成本地SDK环境搭建,详情请参见Pyhton SDK…

android 通话记录和联系人查询

呼叫记录有三种类型: 来电:CallLog.Calls.INCOMING_TYPE (常量值:1) 已拨:CallLog.Calls.OUTGOING_TYPE(常量值:2) 未接:CallLog.Calls.MISSED_TYPE&…

如何获取手机短信和通话记录信息

android 下不同进程是通过ContentResolver共享数据的,下面通过这个类去查询手机上所有联系人的信息和通话记录,包含号码、内容、日期,通话时长等信息 一、获取手机短信信息 public void getSmsInPhone() { final String SMS_URI_ALL …

手机通话记录统计分析

现如今,智能手机是人手一份。每天我们都通过手机与外界沟通交流,手机作为必不可少的媒介,无形中记录着我们日常生活中的点点滴滴。这些信息主要包括个人位置信息、通信信息、账号密码信息、存储文件信息等四大类。由于Android是开源的&#x…