PyQT5 基本控制元件介紹一(QLable, QPushButton, QRadioButton)
阿新 • • 發佈:2019-01-29
QLabel
初始化,建構函式
label = QLabel(text)
#text為需要設定的文字資訊
設定文字資訊
label.setText(text)
獲取label文字資訊
message = label.text()
設定文字的對其方式
label.setAlignment(alignment)
# 註解alignment有以下這四種形式(水平方向)
# Qt.AlignLeft
# Qt.AlignHCenter
# Qt.AlignRight
# Qt.ALignJsutify
# 註解alignment有以下這四種形式(垂直方向)
# Qt.AlignTop
# Qt.AlignVCenter
# Qt.AlignBottom
# Qt.AlignBaseline
自動換行設定,當文字內容比較多的時候
lable.setWordWrap(True)
設定margin,類似Android裡面的的Margin
lable.setMargin(margin)
指定縮排
lable.setIndent(indent)
QPushButton
建構函式, label是顯示在button的文字
pushbutton = QPushButton(label)
設定文字
pushbutton.setText(text)
設定Flat,不顯示button
pushButton.setFlat(flat)
獲取button的Flat是否設定了Flat
pushButton.isFlat()
按鈕設定點選顯示選單
pushButton.setMenu(menu)
#這裡也就是說明不是非要那種下拉的控制元件才能做這種效果(如下圖),一般的button控制元件也能達到這樣的效果
'''
1,建立一個QPushButton
button = QPushButton("click me")
2, 建立一個QMenu
menu = Qmneu()
3, 給menu新增子選單並且繫結事件
menu.addAction("hello", self.hello)
這裡的引號裡面的hello表示的是子選單的顯示的名字,而後面的hello表示的如果點選了這個子選單應該執行哪一個函式。
'''
按鈕的點選事件,最基礎的訊號
pushButton.clicked.connect(button_clicked_function)
設定滑鼠移動到上面有提示提示
button.setToolTip("點選退出程式")
QRadioButton
建構函式
radiobutton = QRadioButton(label)
設定文字
radiobutton.setText(label)
獲取文字
radiobutton.text()
是否可以被點選
radiobutton.setChecked(checked)
–
獲取點選的狀態
radiobutton.isChecked()設定圖片
radioButton.setICon(icon)
程式碼如下:
from PyQt5.QtWidgets import *
import sys
class Window(QWidget):
def __init__(self):
QWidget.__init__(self)
layout = QGridLayout()
self.setLayout(layout)
radiobutton = QRadioButton("Brazil")
radiobutton.setChecked(True)
# 有些人可能對著country屬性不理解,這裡是小編自己定義的一個屬性
radiobutton.country = "Brazil"
radiobutton.toggled.connect(self.on_roadio_button_toggled)
layout.addWidget(radiobutton,0 ,0)
radiobutton = QRadioButton("Argentina")
radiobutton.country = "Argentina"
radiobutton.toggled.connect(self.on_radio_button_toggled)
layout.addWidget(radiobutton, 0, 1)
radiobutton = QRadioButton("Ecuador")
radiobutton.country = "Ecuador"
radiobutton.toggled.connect(self.on_radio_button_toggled)
layout.addWidget(radiobutton, 0, 2)
def on_radio_button_toggled(self):
radiobutton = self.sender()
if radiobutton.isChecked():
print("Selected country is %s" % (radiobutton.country))