gpt4 book ai didi

c++ - 在 QTableView 的未使用区域中双击

转载 作者:太空宇宙 更新时间:2023-11-04 13:48:27 27 4
gpt4 key购买 nike

我的应用程序从一个空表开始,我想实现不同的方法来添加项目。一种方法是双击表格未被任何单元格占据的未使用区域(或“背景”)。双击单元格时,我想要默认行为。

我找到了在我的 TestTable 类中重新实现 QAbstractScrollArea::mouseDoubleClickEvent() 方法的方法:

#include <QMouseEvent>
#include <QTableView>

class TestTable : public QTableView
{
Q_OBJECT
signals:
void backgroundDoubleClickEvent(void);
protected:
void mouseDoubleClickEvent (QMouseEvent* e)
{
if (indexAt(e->pos()).isValid())
{
QTableView::mouseDoubleClickEvent(e);
}
else
{
e->accept();
emit backgroundDoubleClickEvent();
}

}
};
  • 这行得通,但是有没有更优雅的方式来做到这一点而无需子类化 QTableView
  • 我不知道我当前的实现有任何限制。有明显的注意事项吗?

最佳答案

如果你不想继承QTableView,试试installEventFilter

关于c++ - 在 QTableView 的未使用区域中双击,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24639407/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com