pyqt4组合框中有下拉回调或事件吗?就像self.connect(self.ui.combobox,SIGNAL("activated(int)"),self.refresh
答案 0 :(得分:2)
QCombobox使用QAbstractItemView(默认情况下为QListView)来显示下拉项(可通过view()
属性访问)。
我不知道为此目的发出任何信号。
但是你可以设置一个eventFilter,它可以在组合框的视图上使用installEventFilter
并实现eventFilter
方法:
from PyQt4 import QtCore, QtGui
class ShowEventFilter(QtCore.QObject):
def eventFilter(self, filteredObj, event):
if event.type() == QtCore.QEvent.Show:
print "Popup Showed !"
# do whatever you want
return QtCore.QObject.eventFilter(self, filteredObj, event)
if __name__ == '__main__':
app = QtGui.QApplication([])
cb = QtGui.QComboBox()
cb.addItems(['a', 'b', 'c'])
eventFilter = ShowEventFilter()
cb.view().installEventFilter(eventFilter)
cb.show()
app.exec_()
答案 1 :(得分:0)
也许你可以试试
customContextMenuRequested(const QPoint &pos)
信号(继承自QWidget)?