Python pyqt5 登入介面

2021-09-26 21:25:30 字數 3834 閱讀 3285

使用python第三方模組pyqy5可以非常簡單方便的設計出簡潔實用的介面,還可以使用 qss 對介面進一步美化。

效果展示:

完整實現**: 

# -*- coding: utf-8 -*-

from pyqt5 import qtcore, qtgui, qtwidgets

class ui_form(object):

def setupui(self, form):

form.setobjectname("form")

form.setstylesheet("qlineedit"

"#form")

form.setfixedsize(desktop.width()//2, desktop.height()//2)

font = qtgui.qfont()

font.setpointsize(12)

form.setfont(font)

self.frame = qtwidgets.qframe(form)

self.frame.setstylesheet("qframe"

"qframe")

op = qtwidgets.qgraphicsopacityeffect()

op.setopacity(0.5)

self.frame.setgraphicseffect(op)

self.frame.setgeometry(qtcore.qrect(form.width()//2, 30, form.width()//2-30, form.height()-60))

self.frame.setframeshadow(qtwidgets.qframe.raised)

self.frame.setobjectname("frame")

self.via = qtwidgets.qlabel(self.frame)

pix = qtgui.qpixmap('via.png')

self.via.setgeometry(self.frame.width()//2-100,20,200,200)

self.via.setpixmap(pix)

# self.via.setstylesheet("border: 2px solid red")

self.via.setscaledcontents(true)

self.usernamelabel = qtwidgets.qlabel(self.frame)

self.usernamelabel.setgeometry(qtcore.qrect(100, 280, 70, 30))

self.usernamelabel.setobjectname("usernamelabel")

self.usernamelabel.setfont(font)

self.usernameedit = qtwidgets.qlineedit(self.frame)

self.usernameedit.setgeometry(qtcore.qrect(180, 280, 180, 30))

self.usernameedit.settext("")

self.usernameedit.setobjectname("usernameedit")

self.usernameedit.setfont(font)

self.passwordlabel = qtwidgets.qlabel(self.frame)

self.passwordlabel.setgeometry(qtcore.qrect(100, 320, 70, 30))

self.passwordlabel.setobjectname("passwordlabel")

self.passwordlabel.setfont(font)

self.passwordedit = qtwidgets.qlineedit(self.frame)

self.passwordedit.setgeometry(qtcore.qrect(180, 320, 180, 30))

self.passwordedit.setobjectname("passwordedit")

self.passwordedit.setechomode(qtwidgets.qlineedit.password)

# self.passwordedit.setfont(font)

self.checkbox = qtwidgets.qcheckbox(self.frame)

self.checkbox.setgeometry(qtcore.qrect(100, 360, 220, 20))

self.checkbox.setobjectname("checkbox")

self.buttonbox = qtwidgets.qdialogbuttonbox(self.frame)

self.buttonbox.setgeometry(qtcore.qrect(140, 400, 180, 30))

self.buttonbox.setstandardbuttons(qtwidgets.qdialogbuttonbox.close|qtwidgets.qdialogbuttonbox.ok)

self.buttonbox.button(qtwidgets.qdialogbuttonbox.ok).settext("登入")

self.buttonbox.button(qtwidgets.qdialogbuttonbox.ok).setstylesheet(

"qpushbutton"

"qpushbutton:hover"

"qpushbutton"

"qpushbutton"

"qpushbutton"

"qpushbutton"

"qpushbutton")

self.buttonbox.button(qtwidgets.qdialogbuttonbox.close).settext("退出")

self.buttonbox.button(qtwidgets.qdialogbuttonbox.close).setstylesheet(

"qpushbutton"

"qpushbutton:hover"

"qpushbutton"

"qpushbutton"

"qpushbutton"

"qpushbutton"

"qpushbutton")

self.buttonbox.setobjectname("buttonbox")

self.retranslateui(form)

qtcore.qmetaobject.connectslotsbyname(form)

def retranslateui(self, form):

form.setwindowtitle(_translate("form", "form"))

self.usernamelabel.settext(_translate("form", "使用者名稱"))

self.passwordlabel.settext(_translate("form", "密 碼"))

self.checkbox.settext(_translate("form", "記住使用者名稱和密碼"))

if __name__=="__main__":

import sys

widget=qtwidgets.qwidget()

ui=ui_form()

ui.setupui(widget)

widget.show()

Python PyQt5 多執行緒

coding utf 8 from pyqt5.qtcore import qthread,pyqtsignal import sys class workthread qthread sinout pyqtsignal str def init self,obj super workthread,...

python PyQt5 基本結構

0.匯入需要的包和模組 from pyqt5.qt import 主要包含了我們常用的一些類,彙總到了一塊 import sys 1.建立乙個應用程式物件 2.控制項的操作 建立控制項,設定控制項 大小,位置,樣式.事件,訊號的處理 2.1 建立控制項 當我們建立乙個控制項之後,如果說,這個控制項沒...

python pyqt5安裝失敗問題

以前裝命令都是pip一條命令搞定,會自動安裝依賴的庫,但在安裝pyqt5時卻遇到了問題 could not find a version that satisfies the requirement sip 4.19 from pyqt5 from versions no matching dist...