wxPython:如何创建一个外观扁平的复选框(无边框边框)。

时间:2017-02-09 00:01:02

标签: python user-interface checkbox wxpython

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

enter image description here

我想知道是否有办法将复选框设置为没有挡板。如果这是不可能的,是否可以自定义没有挡板的油漆/绘制复选框?我找不到例子。谢谢!

1 个答案:

答案 0 :(得分:2)

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

另一方面,制作自定义控件比大多数人认为的要容易得多。对于像复选框这样的东西,你基本上只需要为EVT_PAINT提供一个事件处理程序,它使用wx.PaintDC绘制窗口小部件的当前状态,以及用于与用户交互的鼠标和键盘事件处理程序。 wx.lib包中有几个例子可供您使用,例如wx.lib.stattextwx.lib.buttons