Qt 在QListView中选择项目时启用QPushButton
我基本上得到了一个QPushButton和一个连接到QStandarItemModel的QListView QPushButton允许删除QListView中的选定项目。我试图仅在QListView中至少选择了一个项目时启用QPushButton,但我找不到正确的信号。单击(QModleIndex)看起来是一个不错的起点-如果您设置一个插槽来接收该通知,您应该能够启用按钮 使用QtCreator/Designer:Qt 在QListView中选择项目时启用QPushButton,qt,Qt,我基本上得到了一个QPushButton和一个连接到QStandarItemModel的QListView QPushButton允许删除QListView中的选定项目。我试图仅在QListView中至少选择了一个项目时启用QPushButton,但我找不到正确的信号。单击(QModleIndex)看起来是一个不错的起点-如果您设置一个插槽来接收该通知,您应该能够启用按钮 使用QtCreator/Designer: void MainWindow::on_listWidget_clicked(c
void MainWindow::on_listWidget_clicked(const QModelIndex &index)
{
ui->pushButton->setEnabled(true);
}
如果没有QtCreator,连接将分解为以下内容(Qt4样式):
单击(QModleIndex)看起来是一个不错的起点-如果您设置一个插槽来接收该通知,您应该能够启用按钮
使用QtCreator/Designer:
void MainWindow::on_listWidget_clicked(const QModelIndex &index)
{
ui->pushButton->setEnabled(true);
}
如果没有QtCreator,连接将分解为以下内容(Qt4样式):
正确的信号是
QItemSelectionModel
对象可以使用view->selectionModel()
获得正确的信号QItemSelectionModel
对象可以使用view->selectionModel()
获取。此答案不正确。有许多方法可以更改选择。OP所说的是删除所选项目,在这种情况下,您的解决方案将不起作用。是的,我同意selectionChanged()是应该采取的方法-我只是回答有关启用按钮的问题。这个答案不正确。有许多方法可以更改选择。OP所说的是删除所选项目,在这种情况下,您的解决方案将不起作用。是的,我同意selectionChanged()是应该采取的方法-我只是回答有关启用按钮的问题。