Python 使用Qt進行開發(二)


  上次簡單實現了顯示窗口,下面我們在窗口中加入一些部件。

  1,我們在窗口中使用 setToolTip() 方法添加一個文本提示,在窗口中鼠標暫停幾秒即可顯示該文本信息。

class test():

    def setUI(self,w):
        #設置工具窗口的大小
        w.setGeometry(400,400,400,200)
        #設置工具窗口的標題
        w.setWindowTitle("Test")
        #設置窗口的圖標
        self.setWindowIcon(QtGui.QIcon('icon.png'))
     #設置提示框中文本的字體樣式,大小
     QtWidgets.QToolTip.setFont(QtGui.QFont('SansSerif',20))
     #在窗口中添加一個提示框 w.setToolTip(
'這是Window關機工具') w.show() if __name__=='__main__': #創建應用程序和對象 app = QtWidgets.QApplication(sys.argv) w = QtWidgets.QWidget() ui = test() ui.setUI(w) sys.exit(app.exec_())

  顯示效果如下

  2,接下來我們再往里添加一個文本標簽,本文標簽的添加使用代碼

        #添加文本標簽
        self.label = QtWidgets.QLabel(w)
        #設置標簽的左邊距,上邊距,寬,高
	self.label.setGeometry(QtCore.QRect(60, 20, 120, 45))
        #設置文本標簽的字體和大小,粗細等
	self.label.setFont(QtGui.QFont("Roman times",20,QtGui.QFont.Bold)) 
     #向標簽中添加文本內容
     self.label.setText("Name:")

  

  3,接着我們添加文本輸入框,並添加提交按鈕獲取用戶輸入的內容,最后將內容顯示在窗口下方。完整代碼如下

import os,sys
from PyQt5 import QtCore,QtWidgets,QtGui

class test():

    def setUI(self,w):
        #設置工具窗口的大小
        w.setGeometry(400,400,400,200)
        #設置工具窗口的標題
        w.setWindowTitle("Test")
        #設置窗口的圖標
        w.setWindowIcon(QtGui.QIcon('icon.png'))
        QtWidgets.QToolTip.setFont(QtGui.QFont('SansSerif',10))
        w.setToolTip('這是Window小工具')

        self.label = QtWidgets.QLabel(w)
        self.label.setGeometry(QtCore.QRect(60, 20, 120, 45))
        self.label.setFont(QtGui.QFont("Roman times",20))
        self.label.setText("Name:")
        #添加設置一個文本框
        self.text = QtWidgets.QLineEdit(w)
        #調整文本框的位置大小
        self.text.setGeometry(QtCore.QRect(150,30,160,30))
        #添加提交按鈕和單擊事件
        self.btn = QtWidgets.QPushButton(w)
        #設置按鈕的位置大小
        #self.btn.setGeometry(QtCore.QRect(150,100,70,30))
        #設置按鈕的位置,x坐標,y坐標
        self.btn.move(150,100)
        self.btn.setText("提交")
        #為按鈕添加單擊事件
        self.btn.clicked.connect(self.getText)


        self.label2 = QtWidgets.QLabel(w)
        self.label2.setGeometry(QtCore.QRect(60, 120, 300, 100))
        self.label2.setFont(QtGui.QFont("Roman times",16,QtGui.QFont.Bold))
        self.label2.setText("請輸入名字")

        w.show()

    def getText(self):
        name = self.text.text()
        if name:
            try:
                self.label2.setText("你輸入的名字是%s" % name)
                self.text.clear()
            except:
                self.label2.setText("請輸入名字")

if __name__=='__main__': 
    #創建應用程序和對象
    app = QtWidgets.QApplication(sys.argv)
    w = QtWidgets.QWidget()
    ui = test()
    ui.setUI(w)
    sys.exit(app.exec_())

  效果圖如下

  

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM