如何为小部件添加轮廓边框?

时间:2012-08-12 14:06:24

标签: python wxpython wxwidgets

如何在wxpython中为小部件添加轮廓边框? (任何小部件,例如wx.Button

2 个答案:

答案 0 :(得分:9)

对于面板,您可以使用

p = wx.Panel(....., style=wx.SUNKEN_BORDER)

你可以选择常数:

wx.SIMPLE_BORDER
wx.RAISED_BORDER
wx.SUNKEN_BORDER
wx.NO_BORDER

如果您想在wx.Button周围创建边框,我会将自定义位图与wx.BitmapButton一起使用:

b = wx.BitmapButton(pane, -1, wx.Bitmap('buttons/my_beautiful_button.png'))

对于任何小部件,我认为您始终可以创建一个带有边框的wx.Panel并将小部件放入面板中。

答案 1 :(得分:2)

在wxPython('标准',我的意思是wx.Button,wx.CheckBox等)中,没有简单的方法来改变'标准'小部件的样子,因为它们使用底层操作系统窗口管理器的本机控件,你可以不要改变它。

你的方法是深入研究wx.lib,在那里你可以找到更好的通用控件和不使用本机控件但更喜欢自定义渲染的窗口。

如果您希望更好地控制按钮,请使用wx.lib.buttons。同样的规则适用于其他控件 - 请查看wx.lib