我有一个QTreeView,对于这个树视图的项目,我实现了一个切换功能。用户右键单击项目并显示上下文菜单,如果用户选择切换,则应在启用和禁用之间切换项目的状态。
禁用该项目没有问题。但是,一旦禁用,即使我将其设置为可选项,该项目仍然无法选择,因此用户无法将项目切换回启用状态。以下是我目前的尝试方式。任何帮助将不胜感激。
QAction* toggleItem = new QAction("Toggle", &menu);
connect(toggleItem, SIGNAL(triggered(bool)), this, SLOT(toggle_item()));
...
void MyClass::toggle_item() {
bool currentItemStatus = m_selectedItem->isVisible();
m_selectedItem->setEnabled(!currentItemStatus);
m_selectedItem->setSelectable(true);
}
答案 0 :(得分:0)
禁用商品的含义是准确的:它表示商品无法与互动。
如果您打算与该项目互动,则不得禁用该项目 - 这就是全部。使用另一个可视指示,可能使用前景和/或后台角色。