【问题标题】:wxPython: How to create a checkbox that has a flat look (bezel-less border).wxPython:如何创建具有平面外观(无边框)的复选框。
【发布时间】:2017-06-26 19:47:52
【问题描述】:

我正在开发一个带有一些复选框的小应用程序。该应用程序将在带有 Windows Classic 主题集的 Windows 7 机器上运行。这意味着所有复选框都将具有边框,如下面的屏幕截图所示:

我想知道是否有办法将复选框设置为没有边框。如果那不可能,是否可以在没有边框的情况下自定义绘制/绘制复选框?我一直找不到例子。谢谢!

【问题讨论】:

  • 添加 wx.NO_BORDER 样式标志看起来正确吗?在我的机器上,它们默认看起来是平的

标签: python user-interface checkbox wxpython


【解决方案1】:

这实际上取决于平台和/或主题,以及本机小部件是否支持备用视图等。因此,换句话说,对于有关自定义原生小部件的 LnF 的问题,答案是“可能”,但这可能取决于许多不受 wx 控制的因素。

另一方面,制作自定义控件比大多数人想象的要容易得多。对于复选框之类的东西,您基本上只需要为EVT_PAINT 提供一个事件处理程序,该处理程序使用wx.PaintDC 绘制小部件的当前状态,以及用于与用户交互的鼠标和键盘事件的处理程序。 wx.lib 包中有几个示例可以用来激发灵感,例如 wx.lib.stattextwx.lib.buttons

【讨论】:

    猜你喜欢
    • 2012-03-12
    • 2011-12-19
    • 2010-11-07
    • 1970-01-01
    • 2016-01-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多