PyQt5 之QPushButton
一、常用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_())