新聞中心
這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
創(chuàng)新互聯(lián)Python教程:pythonPyQt5如何實現(xiàn)窗口功能
說明

成都創(chuàng)新互聯(lián)專業(yè)為企業(yè)提供珠山網(wǎng)站建設、珠山做網(wǎng)站、珠山網(wǎng)站設計、珠山網(wǎng)站制作等企業(yè)網(wǎng)站建設、網(wǎng)頁設計與制作、珠山企業(yè)網(wǎng)站模板建站服務,10年珠山做網(wǎng)站經(jīng)驗,不只是建網(wǎng)站,更提供有價值的思路和整體網(wǎng)絡服務。
1、PyQt是制作GUI應用程序的工具包。python編程語言與Qt庫的成功融合。
Qt庫是目前最強大的庫之一。PyQt庫文件由C++編寫,Qt軟件用于C++界面開發(fā);Qt是C++庫,PyQt是Python的移植版,PyQt是Qt的wrapper。
2、PyQt5是一種先進的語言,在底層實現(xiàn)了窗口的基本功能。
實例
import sys
from PyQt5 import QtCore, QtGui, QtWidgets
from PyQt5.QtWidgets import*
from PyQt5.QtCore import*
from Dialog.HttpLogin import HttpPost
class Ui_dialog(QWidget):
def __init__(self):
super().__init__()
self.setupUi() #界面繪制交給InitUi方法
def setupUi(self):
self.setObjectName("學生登錄界面")
self.resize(535, 344)
font = QtGui.QFont()
font.setFamily("Arial")
font.setPointSize(14)
#注意變量定義的先后順序
self.lineEdit = QtWidgets.QLineEdit(self)
self.lineEdit.setGeometry(QtCore.QRect(190, 100, 231, 31))
self.lineEdit.setObjectName("lineEdit")
#將其設為密碼輸入框
self.lineEdit_2 = QtWidgets.QLineEdit(self)
self.lineEdit_2.setEchoMode(QtWidgets.QLineEdit.Password)
self.lineEdit_2.setGeometry(QtCore.QRect(190, 150, 231, 31))
self.lineEdit_2.setObjectName("lineEdit_2")
#禁止窗口變化(最上方的設置)
self.setWindowFlags(QtCore.Qt.WindowCloseButtonHint)
self.setFont(font)
self.pushButton = QtWidgets.QPushButton(self)
self.pushButton.setGeometry(QtCore.QRect(100, 280, 93, 28))
self.pushButton.setObjectName("pushButton")
#給取消按鈕添加了響應事件
self.pushButton.clicked.connect(QCoreApplication.instance().quit)
#確認按鈕
self.pushButton_2 = QtWidgets.QPushButton(self)
self.pushButton_2.setGeometry(QtCore.QRect(340, 280, 93, 28))
self.pushButton_2.setObjectName("pushButton_2")
self.pushButton_2.clicked.connect(self.forlogin)#帶參數(shù)默認執(zhí)行 不帶參數(shù)點擊執(zhí)行
self.label = QtWidgets.QLabel(self)
self.label.setGeometry(QtCore.QRect(90, 100, 72, 21))
self.label.setObjectName("label")
self.label_2 = QtWidgets.QLabel(self)
self.label_2.setGeometry(QtCore.QRect(90, 155, 72, 20))
self.label_2.setObjectName("label_2")
self.retranslateUi(self)
QtCore.QMetaObject.connectSlotsByName(self)
def retranslateUi(self, dialog):
_translate = QtCore.QCoreApplication.translate
dialog.setWindowTitle(_translate("dialog", "Dialog"))
self.pushButton.setText(_translate("dialog", "取消"))
self.pushButton_2.setText(_translate("dialog", "確認"))
self.label.setText(_translate("dialog", "賬號:"))
self.label_2.setText(_translate("dialog", "密碼:"))
def forlogin(self):
#獲取賬號輸入框的類容和密碼輸入框的類容
name = self.lineEdit.text()
password = self.lineEdit_2.text()
sign = HttpPost.login(name,password)
if sign=="true":
print("登錄成功")
self.QCoreApplication.instance().quit#關(guān)閉當前窗口
else:
print("登錄失敗")
reply = QtWidgets.QMessageBox.question(self,"警告","密碼錯誤請重新登錄",QtWidgets.QMessageBox.Yes, QtWidgets.QMessageBox.No)
if reply == QtWidgets.QMessageBox.Yes:
self.lineEdit_2.setText("")
self.lineEdit.setText("")
else:
self.QCoreApplication.instance().quit#關(guān)閉當前窗口
if __name__ == '__main__':
app = QApplication(sys.argv)
my=Ui_dialog()
my.show()
sys.exit(app.exec_())以上就是python PyQt5實現(xiàn)窗口功能的方法,希望對大家有所幫助。更多Python學習指路:創(chuàng)新互聯(lián)Python教程
本文教程操作環(huán)境:windows7系統(tǒng)、Python 3.9.1,DELL G3電腦。
本文題目:創(chuàng)新互聯(lián)Python教程:pythonPyQt5如何實現(xiàn)窗口功能
分享URL:http://m.fisionsoft.com.cn/article/djhhehd.html


咨詢
建站咨詢
