PyQt上下文菜单

2024-09-28 05:22:23 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在将contextmenu动态添加到QTableWidget:

playlistContenxt = QAction("Add to %s" % (currentItem.text()), self.musicTable)
playlistContenxt.setData(currentData)
self.connect(playlistContenxt, SIGNAL("triggered()"), self.addToPlaylistAction)
self.musicTable.addAction(playlistContenxt)

在当前项.text()是从数据库中获取的播放列表名称,因为您只能看到一个函数(addToPlaylistAction)接收来自不同操作的所有触发器。在addToPlaylistAction函数中,如何确定单击了哪个菜单?在


Tags: to函数textselfadd动态qtablewidgetsetdata
2条回答

您可以使用QAction.setData来设置一些数据,以便插槽知道要添加到哪个播放列表中。然后从插槽中可以调用self.sender()来获取触发信号的操作,并使用action.data()来取回数据。在

正确的方法是使用signal mapper:您可以将数据分配给每个发送方,并使用该数据获得一个信号。在

相关问题 更多 >

    热门问题