【问题标题】:Window-overflowing widget in wxWidgetswxWidgets 中的窗口溢出小部件
【发布时间】:2009-01-20 17:44:51
【问题描述】:

我正在寻找一种方法在 Linux 上的 wxPython 中实现这种设计...
我有一个带有按钮的工具栏,当按下按钮时,应该会出现一个弹出窗口,模仿工具栏的扩展(如菜单),并且这个弹出窗口应该显示两列单选按钮(比如 2x5)和一个文本框.. . 我的主要问题是工具栏的高度很小,所以弹出窗口必须溢出窗口/客户区的边界..

我想到了两种可能的实现方式:

  • 通过使用 wxMenu,因为菜单可以在客户区之外绘制。我担心布局可能性对于我的目标不够灵活
  • 使用异形框架。按下按钮将重新塑造框架并根据要求绘制所需的小部件。

我的问题是:我是否遗漏了什么/有什么错误? :) 这可行吗?

【问题讨论】:

    标签: wxpython wxwidgets shaped-window


    【解决方案1】:

    使用菜单是不行的,因为wxWidgets 不能将小部件放在菜单上。原则上可以使用异形框架,但问题是要获取您单击的按钮的位置,以便在正确的位置显示窗口。那时我试图这样做,但没有运气(在 C++ wxWidgets 中)。也许这种情况在两者之间发生了变化,祝你好运。

    您也可以尝试wxComboCtrl,它允许您拥有一个自定义弹出窗口。然后可以显示单选框和输入控件。

    【讨论】:

    • wxComboCtrl 看起来不错,非常感谢 :) 现在开始解决下一个问题.. X-) stackoverflow.com/questions/464717/…
    • 这个问题阻碍了我.. :/ 看起来“形状窗口”路径也很有希望,同时我会尝试..
    • Joril,有一个窗口正是为此目的。我忘记了它的名字。它获得焦点,当您单击其他位置时,它会消失。 wx 的示例目录中有一个示例。祝你好运:)
    • 啊。名称是“wxPopupTransientWindow”。我相信那是您要使用的窗口,而不是异形框架
    • 我在尖叫“哦!”从我的肺顶部_我刚刚用一个形状的窗口完成了整个事情。为什么 - 哦 - 为什么 SO RSS 提要不显示“收到的 cmets”? :( 无论如何,非常感谢您的帮助 :)
    猜你喜欢
    • 2016-12-13
    • 1970-01-01
    • 2015-01-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-07-18
    • 2017-05-09
    • 2010-10-11
    相关资源
    最近更新 更多