from PyQt5.Qt import *
import sys
import math
app=QApplication(sys.argv)
Windows=QWidget()
Windows.setWindowTitle("QToolButton-可用信号")
Windows.resize(500,500)
button=QToolButton(Windows)
button.resize(50,50)
button.setIcon(QIcon("D:\ICO\ooopic_1552382292.ico"))
menu=QMenu()
sub_menu=QMenu("最近打开",menu)
open_recent=QAction(QIcon("D:\ICO\ooopic_1552382343.ico"),"PyQt5教程",sub_menu)
open_recent.setData("PyQt5使用中..")#设置数据
#open_recent.triggered.connect(lambda :print("PyQt5使用中.."))
sub_menu.setIcon(QIcon("D:\ICO\ooopic_1552382400.ico"))
action=QAction(QIcon("D:\ICO\ooopic_1552382409.ico"),"行为",menu)
#action.triggered.connect(lambda:print("点击了行为"))
action.setData("点击了行为")
menu.addMenu(sub_menu)
sub_menu.addAction(open_recent)
menu.addSeparator()
menu.addAction(action)
button.setMenu(menu)
button.setPopupMode(QToolButton.InstantPopup)
def do_action(action):
print(action.data())
button.triggered.connect(do_action)
Windows.show()
sys.exit(app.exec_())