【问题标题】:QTextEdit implement an onlclick eventQTextEdit 实现 onclick 事件
【发布时间】:2014-01-14 10:25:33
【问题描述】:

我有一个继承自 QTextEdit 的对象,如下所示:

class infoBox : public QTextEdit
{
    Q_OBJECT

public:
    :
    :
}

我在我的 UI 窗口中这样使用它:

class Ui_MainWindow
{
    infoBox *pInfoBox;

public:

    void setupUi(QMainWindow *MainWindow)
    {
        pInfoBox = new infoBox(MainWindow);
        pInfoBox.show();
    }
}

这是我的代码的真正精简版本,只是为了向您展示它的设置方式。发生的情况是我的 MainWindow 打开并带有里面的 infoBox(infoBox 设置在 c'tor 中),到目前为止一切顺利。

现在我想让它工作起来有点像闪屏,这样当我点击它时它就会消失(即调用代码pInfoBox.hide()。但我看不到“onclick”信号或任何类似的东西对于 QTextEdit,所以我无法连接信号/插槽来执行此操作。我该如何实现?

【问题讨论】:

    标签: c++ qt onclick qtextedit


    【解决方案1】:

    例如,您可以在 infoBox 类中处理点击事件(鼠标释放):

    class infoBox : public QTextEdit
    {
        Q_OBJECT
    
        [..]
    
    protected:
        void mouseReleaseEvent(QMouseEvent *event)
        {
            hide();
        }
    }
    

    【讨论】:

    • 啊,难怪我什么都找不到,我正在寻找“click”和“clicked”的帮助......这很完美,非常感谢:)
    猜你喜欢
    • 2018-06-24
    • 1970-01-01
    • 2021-11-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-28
    • 2016-09-11
    • 1970-01-01
    相关资源
    最近更新 更多