【问题标题】:Unable to Edit wxWidgets files无法编辑 wxWidgets 文件
【发布时间】:2023-03-18 02:05:02
【问题描述】:

我想覆盖“popupwin.h”中的“DismissAndNotify”,但它仍在调用内置函数。

class WXDLLIMPEXP_CORE wxPopupTransientWindowBase : public wxPopupWindow {
protected:
    void DismissAndNotify()
    {
        Dismiss();
        OnDismiss();
    }
}
class WXDLLIMPEXP_CORE wxPopupTransientWindow : public wxPopupTransientWindowBase {
    virtual void DismissAndNotify(); // I want to call this function
}

PS:我是 wxWidgets 的新手

【问题讨论】:

    标签: c++ user-interface wxwidgets popupwindow wxtextctrl


    【解决方案1】:

    DismissAndNotify() 根本不是公共 API 的一部分,因此即使它有效,使用它也是一个非常糟糕的主意,因为您的代码很容易停止使用更新的 wxWidgets 版本,甚至在另一个平台上使用相同版本.

    它不起作用的原因是它甚至不是虚拟的,所以你不能像你试图做的那样覆盖它。相反,您可以覆盖Dismiss(),它既是公共的(记录的)又是虚拟的,或者如果您只是想对弹出窗口作出反应,则可以覆盖 OnDismiss()

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-03-23
      • 1970-01-01
      • 2014-01-21
      • 2017-07-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多