我正在开发一款带有一些复选框的小应用。该应用程序将在具有Windows经典主题集的Windows 7计算机上运行。这意味着所有复选框都有边框,如下面的屏幕截图所示:
我想知道是否有办法将复选框设置为没有挡板。如果这是不可能的,是否可以自定义没有挡板的油漆/绘制复选框?我找不到例子。谢谢!
答案 0 :(得分:2)
这实际上取决于平台和/或主题,以及本机小部件是否支持备用视图等。换句话说,对于有关自定义本机小部件的LnF的问题,答案是“可能”,但它可能取决于许多不受wx控制的因素。
另一方面,制作自定义控件比大多数人认为的要容易得多。对于像复选框这样的东西,你基本上只需要为EVT_PAINT
提供一个事件处理程序,它使用wx.PaintDC
绘制窗口小部件的当前状态,以及用于与用户交互的鼠标和键盘事件处理程序。 wx.lib
包中有几个例子可供您使用,例如wx.lib.stattext
或wx.lib.buttons
。