QListWidget 设置焦点在某个Item

本文介绍如何在Qt中使用QListWidget并正确设置其项的焦点,包括实例代码展示。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

            一般是当焦点在别的窗口,然后把焦点设置到QListWidget 的某个ITEM,一般的方法为:

     QListWidget *widget = new QListWidget(this);

      widget->setFocus();

      widget->setCurrentRow(0);

      改设置方法焦点是可以设置有效了,但某个ITEM的焦点无效,必须互换下。


class Ui_ModelSelectionWindow(object): def setupUi(self, ModelSelectionWindow): ModelSelectionWindow.setObjectName("ModelSelectionWindow") ModelSelectionWindow.resize(776, 542) self.centralwidget = QtWidgets.QWidget(ModelSelectionWindow) self.centralwidget.setObjectName("centralwidget") self.verticalLayout = QtWidgets.QVBoxLayout(self.centralwidget) self.verticalLayout.setObjectName("verticalLayout") self.modelGroup = QtWidgets.QGroupBox(self.centralwidget) self.modelGroup.setObjectName("modelGroup") self.verticalLayout_2 = QtWidgets.QVBoxLayout(self.modelGroup) self.verticalLayout_2.setObjectName("verticalLayout_2") self.modelList = QtWidgets.QListWidget(self.modelGroup) self.modelList.setObjectName("modelList") item = QtWidgets.QListWidgetItem() self.modelList.addItem(item) item = QtWidgets.QListWidgetItem() self.modelList.addItem(item) item = QtWidgets.QListWidgetItem() self.modelList.addItem(item) self.verticalLayout_2.addWidget(self.modelList) self.modelInfoLabel = QtWidgets.QLabel(self.modelGroup) self.modelInfoLabel.setObjectName("modelInfoLabel") self.verticalLayout_2.addWidget(self.modelInfoLabel) self.verticalLayout.addWidget(self.modelGroup) self.buttonLayout = QtWidgets.QHBoxLayout() self.buttonLayout.setObjectName("buttonLayout") self.selectBtn = QtWidgets.QPushButton(self.centralwidget) self.selectBtn.setStyleSheet("background-color: rgb(85, 170, 255); color: white;") self.selectBtn.setObjectName("selectBtn") self.buttonLayout.addWidget(self.selectBtn) self.cancelBtn = QtWidgets.QPushButton(self.centralwidget) self.cancelBtn.setObjectName("cancelBtn") self.buttonLayout.addWidget(self.cancelBtn) self.addModelBtn = QtWidgets.QPushButton(self.centralwidget) self.addModelBtn.setObjectName("addModelBtn") self.buttonLayout.addWidget(self.addModelBtn) self.verticalLayout.addLayout(self.buttonLayout) ModelSelectionWindow.setCentralWidget(self.centralwidget) self.retranslateUi(ModelSelectionWindow) QtCore.QMetaObject.connectSlotsByName(ModelSelectionWindow) def retranslateUi(self, ModelSelectionWindow): _translate = QtCore.QCoreApplication.translate ModelSelectionWindow.setWindowTitle(_translate("ModelSelectionWindow", "模型选择")) self.modelGroup.setTitle(_translate("ModelSelectionWindow", "可用模型")) __sortingEnabled = self.modelList.isSortingEnabled() self.modelList.setSortingEnabled(False) item = self.modelList.item(0) item.setText(_translate("ModelSelectionWindow", "默认模型.pt (best.pt)")) item = self.modelList.item(1) item.setText(_translate("ModelSelectionWindow", "yolov8n.pt ")) item = self.modelList.item(2) item.setText(_translate("ModelSelectionWindow", "假如还有一个模型在这里")) self.modelList.setSortingEnabled(__sortingEnabled) self.modelInfoLabel.setText(_translate("ModelSelectionWindow", "选择模型查看详细信息...")) self.selectBtn.setText(_translate("ModelSelectionWindow", "选择模型")) self.cancelBtn.setText(_translate("ModelSelectionWindow", "取消")) self.addModelBtn.setText(_translate("ModelSelectionWindow", "添加模型...")) 我需要你在界面的基础上,补充代码实现各项功能,并且在选择模型后跳回主页面
05-14
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值