Python PyQt菜单的动态填充

为了继续开发示例应用程序,假设您需要在_文件_下创建_打开最近的_子菜单,并动态填写最近打开的文件或文档。因此,需要操作以下步骤:

1、在_File_下创建_Open最近的_子菜单。

2、编写动态生成操作,填写菜单的定制插槽。

3、连接.aboutToShow()菜单信号和自定义插槽。

实例

fromfunctoolsimportpartial
#Snip...

classWindow(QMainWindow):
#Snip...
defpopulateOpenRecent(self):
#Step1.Removetheoldoptionsfromthemenu
self.openRecentMenu.clear()
#Step2.Dynamicallycreatetheactions
actions=[]
filenames=[f"File-{n}"forninrange(5)]
forfilenameinfilenames:
action=QAction(filename,self)
action.triggered.connect(partial(self.openRecentFile,filename))
actions.append(action)
#Step3.Addtheactionstothemenu
self.openRecentMenu.addActions(actions)

以上就是Python PyQt菜单的动态填充的方法,希望对大家有所帮助更多Python学习指路:Python基础教程

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。