cra*_*nny 6 python user-interface qt pyqt
我需要知道我在动态生成的菜单系统中点击了哪个项目.我只想知道我点击了什么,即使它只是一个字符串表示.
def populateShotInfoMenus(self):
self.menuFilms = QMenu()
films = self.getList()
for film in films:
menuItem_Film = self.menuFilms.addAction(film)
self.connect(menuItem_Film, SIGNAL('triggered()'), self.onFilmSet)
self.menuFilms.addAction(menuItem_Film)
def onFilmRightClick(self, value):
self.menuFilms.exec_(self.group1_inputFilm.mapToGlobal(value))
def onFilmSet(self, value):
print 'Menu Clicked ', value
Run Code Online (Sandbox Code Playgroud)
Aar*_*lla 11
而不是onFilmSet直接用作连接的接收器,使用lambda函数,以便您可以传递其他参数:
receiver = lambda film=film: self.onFilmSet(self, film)
self.connect(menuItem_Film, SIGNAL('triggered()'), receiver)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6292 次 |
| 最近记录: |