色综合图-色综合图片-色综合图片二区150p-色综合图区-玖玖国产精品视频-玖玖香蕉视频

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

Python制作一個(gè)仿QQ辦公版的圖形登錄界面

瀏覽:52日期:2022-07-10 14:16:21

最近,QQ的辦公版本——TIM進(jìn)行了一次更新升級(jí)。本次更新升級(jí)大幅修改了界面的樣式,看起來(lái)更加的清爽、簡(jiǎn)潔和高效了。

Python制作一個(gè)仿QQ辦公版的圖形登錄界面

這種界面州的先生還是比較喜歡的,沒(méi)有QQ那么花里胡哨,也比微信那些殘缺的功能更加豐富。

并且這次的登錄界面還新增了微信登錄的選項(xiàng),看來(lái) TIM 還打算從微信那邊爭(zhēng)取一部分用戶過(guò)來(lái)。

閑話少說(shuō),進(jìn)入正題。

州的先生看到這個(gè)出自大廠的圖形界面程序,不由得想用 Python 的圖形界面模塊來(lái)實(shí)現(xiàn)一個(gè)。在上古時(shí)代,前端開(kāi)發(fā)還是被稱為“切圖仔”的崗位,那時(shí)候的一個(gè)練手方式就是使用手寫(xiě) HTML 和 CSS 來(lái)模仿各個(gè)網(wǎng)站的樣式。

同樣的,要想把桌面圖形程序?qū)懙镁馈⒑每矗瑢?duì)優(yōu)秀桌面圖形界面程序進(jìn)行模仿必不可少。今天,咱們就來(lái)使用 Python 的圖形界面模塊 PyQt5 模仿實(shí)現(xiàn)最新版本的 TIM 的登錄界面。

最終的成果如下圖所示:

Python制作一個(gè)仿QQ辦公版的圖形登錄界面

一、畫(huà)虎先畫(huà)骨

在動(dòng)工之前,我們先來(lái)分析和設(shè)計(jì)一下這個(gè)登錄界面的結(jié)構(gòu)。TIM 原始的界面布局咱們無(wú)從得知,但是根據(jù)呈現(xiàn)出來(lái)的樣式,咱們可以確定自己按照什么結(jié)構(gòu)的組織這個(gè)登錄界面。

Python制作一個(gè)仿QQ辦公版的圖形登錄界面

首先,整個(gè)登錄界面,由2塊組成:

左側(cè)的宣傳圖片 右側(cè)的功能按鈕

左側(cè)的宣傳圖片沒(méi)啥功能點(diǎn),咱們可以直接用一個(gè)背景圖片搞定;右側(cè)的功能按鈕則分了很多類(lèi)和層級(jí):

頂部的程序控制按鈕組 中部的QQ/微信登錄方式圖標(biāo)切換組; 中下部的表單輸入框組; 底部的選項(xiàng)控制組;

基于此,咱們綜合選擇網(wǎng)格布局、垂直布局和水平布局來(lái)排列各個(gè)控件。

然后,登陸界面的各個(gè)子模塊和功能按照如下圖所示來(lái)選擇 PyQt5 中的控件:

Python制作一個(gè)仿QQ辦公版的圖形登錄界面

這樣,登錄界面的結(jié)構(gòu)就完成了。

Python制作一個(gè)仿QQ辦公版的圖形登錄界面

二、準(zhǔn)備素材

圖標(biāo)在現(xiàn)代軟件設(shè)計(jì)中的作用越來(lái)越大,恰當(dāng)?shù)膱D標(biāo)使用可以增強(qiáng)界面的視覺(jué)美觀和交互友好。在TIM的登錄界面中,也是使用的很多的圖標(biāo)來(lái)表示各個(gè)功能的操作,比如設(shè)置按鈕、關(guān)閉按鈕、切換按鈕、賬號(hào)選擇按鈕、登錄按鈕等。

在此,我們通過(guò)著名的阿里巴巴在線矢量圖標(biāo)庫(kù)——IconFont 來(lái)獲取所需的圖標(biāo)文件,經(jīng)過(guò)選擇,最終下載得到:

Python制作一個(gè)仿QQ辦公版的圖形登錄界面

準(zhǔn)備好圖標(biāo)之后,我們就可以在代碼中使用了。對(duì)于這些圖標(biāo)文件,有兩種使用方式:

直接使用setIcon()方法進(jìn)行圖標(biāo)設(shè)置,例如:

self.qq_icon.setIcon(QtGui.QIcon('./qq_hover.svg')) 在QSS中編寫(xiě)樣式引用圖標(biāo)文件,例如:

QPushButton#setting_icon{ border-image: url('./setting.svg'); }

上述兩種方式,我們根據(jù)實(shí)際的情況,都使用了。

Python制作一個(gè)仿QQ辦公版的圖形登錄界面

三、完善細(xì)節(jié)

在界面結(jié)構(gòu)搭建好之后,按鈕圖標(biāo)準(zhǔn)備和使用上之后,剩下的就是邊邊角角的細(xì)節(jié)優(yōu)化和美化了。

色彩、間距的調(diào)整

TIM的登錄界面主體上采用了灰色的字體顏色,還有QQ/微信登錄切換的圖標(biāo)顏色、各個(gè)組件之間的間距、對(duì)齊方式都需要我們進(jìn)行細(xì)致的調(diào)整。這些通過(guò) QSS 、控件的setFixedSize()方法和布局的setAlignment()方法都可以完美實(shí)現(xiàn)。

窗口邊框的隱藏

將窗口默認(rèn)的工具欄邊框隱藏掉,然后使用自定義的按鈕來(lái)實(shí)現(xiàn)窗口的控制;

self.setWindowFlags(QtCore.Qt.FramelessWindowHint)

窗口陰影的實(shí)現(xiàn)

取消掉窗口邊框之后,窗口與外界之間就沒(méi)有的隔離的標(biāo)志,我們可以重寫(xiě)繪制一個(gè)窗口的邊框線,但是TIM使用的是窗口陰影的方式來(lái)突出和隔離界面,所以咱們也使用陰影的方式來(lái)實(shí)現(xiàn):

shadow = QtWidgets.QGraphicsDropShadowEffect(self, blurRadius=9.0, color=QtGui.QColor(116, 116, 116), offset=QtCore.QPointF(0, 0))window.setGraphicsEffect(shadow)

四、成果展示

最終,使用 Python 模仿TIM編寫(xiě)出來(lái)的登錄圖形界面效果如下圖所示:

Python制作一個(gè)仿QQ辦公版的圖形登錄界面

文章版權(quán)所有:州的先生博客,轉(zhuǎn)載必須保留出處及原文鏈接

原文地址:https://zmister.com/archives/1590.html

以上就是Python制作一個(gè)仿QQ辦公版的圖形登錄界面的詳細(xì)內(nèi)容,更多關(guān)于python 圖形登錄界面的資料請(qǐng)關(guān)注好吧啦網(wǎng)其它相關(guān)文章!

標(biāo)簽: qq Python
相關(guān)文章:
主站蜘蛛池模板: 国内xxxx乱子另类 | 国产美女精品视频免费观看 | 国产亚洲欧美日韩在线观看一区二区 | 亚洲免费高清 | 午夜影院0606 | 手机在线看福利 | 视频精品一区 | 在线观看a网站 | 在线私拍国产福利精品 | 女人张开腿让男人桶视频免费大全 | 亚洲在线观看视频 | 欧美在线看欧美高清视频免费 | 怡红院在线视频观看 | 日本三级香港三级妇三 | 国产亚洲网站 | 91精品一区二区三区在线 | 全免费毛片在线播放 | 国内自拍第100页 | 深爱五月开心网亚洲综合 | 中文字幕在线视频在线看 | 日韩美a一级毛片 | 国产精品久久久久久久久久98 | 欧美亚洲影院 | 国产精品亚洲一区二区三区久久 | 一区二区三区亚洲视频 | 精品欧美成人高清视频在线观看 | 国产一级特黄一级毛片 | 精品欧美一区二区三区在线观看 | 99热久久国产精品一区 | 俄罗斯一级黄色片 | 久久国产免费观看精品3 | 国产精品欧美日韩一区二区 | 国产欧美日韩视频在线观看 | 寡妇野外啪啪一区二区 | 国产成人精品免费视频大全办公室 | 欧美一级乱理片免费观看 | 亚洲网站在线播放 | 成人高清视频免费观看 | 日韩欧美亚洲中字幕在线播放 | 97欧美精品一区二区三区 | 日本经典在线三级视频 |