gpt4 book ai didi

c++ - 向类中添加新功能

转载 作者:行者123 更新时间:2023-11-27 23:20:57 25 4
gpt4 key购买 nike

我正在研究 Qt4 库,我想为我项目中 QWidget 的所有子项添加一些功能。我需要所有小部件都覆盖 mousePressEvent。显然我不需要在我使用的每个特定小部件中覆盖它(我使用它们中的 ma​​ny 并且它们遵循 DRY 规则),而是创建一个 Foo 类:

class Foo : public QWidget
{
Q_OBJECT
protected:

/* implementation is just a test */
virtual void mousePressEvent(QMouseEvent*) { this->move(0,0); }
};

并从中派生出我的按钮:

class FooButton : public QPushButton , public Foo
{

public:
FooButton (QWidget* parent) : QPushButton(parent) { };

};

但事件似乎没有被覆盖......我做错了什么?提前致谢。

最佳答案

对于 mousePressEvent 访问,尝试 QObject::installEventFilter()。

http://doc.qt.digia.com/stable/qobject.html

关于c++ - 向类中添加新功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13094229/

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