alp*_*ric 5 python qt pyqt qlistwidget
下面的代码创建了一个带有QListWidget和 的对话框窗口QPushButton。单击该按钮会启动一个scroll()功能,该功能会查找并选择“ITEM-0011”。
我想知道是否有一种方法可以滚动列表小部件,使所选小部件ITEM-0011位于QListWidget? 下面是最终结果的样子:
from PyQt4 import QtCore, QtGui
app=QtGui.QApplication([])
def scroll():
item = listWidget.findItems('ITEM-0011', QtCore.Qt.MatchRegExp)[0]
item.setSelected(True)
window = QtGui.QDialog()
window.setLayout(QtGui.QVBoxLayout())
listWidget = QtGui.QListWidget()
window.layout().addWidget(listWidget)
for i in range(100):
QtGui.QListWidgetItem('ITEM-%04d'%i, listWidget)
btn = QtGui.QPushButton('Scroll')
btn.clicked.connect(scroll)
window.layout().addWidget(btn)
window.show()
app.exec_()
Run Code Online (Sandbox Code Playgroud)
列表小部件有一个scrollToItem方法,可以将项目滚动到特定位置:
def scroll():
item = listWidget.findItems('ITEM-0011', QtCore.Qt.MatchRegExp)[0]
item.setSelected(True)
listWidget.scrollToItem(item, QtGui.QAbstractItemView.PositionAtTop)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4678 次 |
| 最近记录: |