QTreeWidgetItem更改-检测输入/ESC
QTreeWidgetItem Change - Detect Enter/ESC
我正在开发一个带有QTreeWidgetItem的Qt/C++应用程序。当创建一个新项目时,我将其设置为setEditable
,它允许我直接在UI中填写新名称。
我目前正在使用 有没有一个基于SIGNAL/SLOT的命令可以使用,它可以捕捉Enter/Esc事件。目标是触发相同的信号 我想将Enter/Esc信号连接到 我尝试过使用 有什么想法吗, SebitemChanged
来捕获更改并保存它。默认情况下,我将新项目名称设置为新文件夹,之后我可以手动更改它。我的问题是,当我创建项目时,它将变为可编辑的,如果我按Enter或Escconnect(this, SIGNAL(itemChanged(QTreeWidgetItem*, int)),
this, SLOT(onTreeItemChanged(QTreeWidgetItem*)));
onTreeItemChanged
,就像对itemChanged
所做的那样。itemActivated
,但即使按下Enter,它也不会被触发。connect(this, SIGNAL(itemActivated(QTreeWidgetItem*, int)),
this, SLOT(onTreeItemChanged(QTreeWidgetItem*)));
很抱歉写下这个答案,但我仍然无法评论:
我遇到了一些(可能)类似的问题,涉及一个从QCombobox派生的类,它有一些特殊的行为,什么时候显示弹出窗口,什么时候不显示。
每次按下Return键时,都会发生这种情况,但它不是QEventKeyEvent,解决方案是捕获QEvent::Shortcut,因为元素将此键解释为accept的快捷键。
--编辑--在这种情况下,我经常安装一个事件过滤器,让它只将事件写入输出,使用switch语句过滤掉不感兴趣的元素,直到找到罪魁祸首。
- 在C++程序中输入的文本文件将不起作用,除非文本被复制和粘贴
- 2D数组来自文本输入,中间有空格
- 如何使用 < 和 > 命令获取 c++ 中的输入和输出?
- 检查输入是否不是整数或数字
- 正在尝试了解输入验证循环
- 读取文件并输入到矢量中
- C++如何通过用户输入删除列表元素
- 用c++从输入文件中读取另一行
- 读取文件的最后一行并输入到链接列表时出错
- 创建一个函数以在输入为负数或零时输出字符串.第一次执行用户定义的函数
- 如何使用用户输入在C++中正确填充2D数组
- C++MySQL C api用户输入行
- 输入到文件并输出到另一个文件,并将流文件传递给函数
- 用户定义函数中的指针和输入
- 如何在C++中检查2D数组中负值的输入验证
- 如何只允许用户输入正整数
- 在while循环中输入带有std::cin的字符串后,控制台会输出大量胡言乱语
- 输入中的字符串数未知(以字母表示)
- cpp二进制搜索问题,计算给定数组中输入元素的出现次数
- QTreeWidgetItem更改-检测输入/ESC