一、常用API
1、创建按钮控件
QPushButton():创建一个无父控件的按钮控件
QPushButton(parent):创建控件的同时, 设置父控件
QPushButton(text, parent):创建控件的同时, 设置提示文本和父控件
QPushButton(icon, text, parent):创建控件的同时, 设置图标, 提示文本和父控件
2、快捷键
setShortCut(text)
3、菜单
setMenu(QMenu):设置菜单
menu():获取菜单
showMenu():展示菜单
4、边框是否保持扁平
setFlat(bool):设置了此属性,则除非按下按钮,否则大多数样式都不会绘制按钮背景
isFlat():获取当前按钮边框是否扁平
二、信号
三、案例
from PyQt5.Qt import *
import sys
class Window(QWidget):
def __init__(self):
super().__init__()
self.setWindowTitle('QPushButton-功能API')
self.resize(500, 400)
self.setup_ui()
def setup_ui(self):
ibtn = QPushButton(self)
ibtn.setText('按钮')
ibtn.setIcon(QIcon('xxx.png'))
mbtn = QPushButton('菜单', self)
mbtn.move(100, 0)
menu = QMenu(self)
submenu = QMenu(menu)
submenu_test = QAction(QIcon('xxx.png'), '新建', submenu)
submenu.addAction('test')
submenu_test.setMenu(submenu)
menu.addAction(submenu_test)
menu.addSeparator()
open_action = QAction("打开", menu)
open_action.triggered.connect(lambda: print("打开文件"))
menu.addAction(open_action)
menu.addSeparator()
menu.addAction('退出程序')
mbtn.setMenu(menu)
if __name__ == '__main__':
app = QApplication(sys.argv)
window = Window()
window.show()
sys.exit(app.exec_())