如何使wx工具栏按钮更大?

Sov*_*iut 2 python user-interface wxwidgets wxpython toolbar

我有一个wx.Toolbar,我想让按钮更大.我搜索过,似乎无法找到有关如何执行此操作的具体文档.

我也想知道这将跨平台转换得多好; OSX上的按钮和图标会发生什么?

Sté*_*iez 5

这取决于你想要改变什么:是按钮的大小还是图标的大小?

要更改按钮的大小,请使用SetToolBitmapSize(例如24x24):

toolbar.SetToolBitmapSize((24, 24))
Run Code Online (Sandbox Code Playgroud)

但这只会改变按钮的大小.如果要更改图标的大小,只需使用较大的图标即可.最简单的方法是使用wx.ArtProvider:

wx.ArtProvider.GetBitmap(wx.ART_FILE_SAVE, wx.ART_TOOLBAR, (24, 24))
Run Code Online (Sandbox Code Playgroud)

所以,总结一下:

# Define the size of the icons and buttons
iconSize = (24, 24)

# Set the size of the buttons
toolbar.SetToolBitmapSize(iconSize)

# Add some button
saveIcon = wx.ArtProvider.GetBitmap(wx.ART_FILE_SAVE, wx.ART_TOOLBAR, iconSize)
toolBar.AddSimpleTool(1, saveIcon, "Save", "Save current file")
Run Code Online (Sandbox Code Playgroud)

备注:由于SetToolBitmapSize更改按钮的大小,而不是图标的大小,您可以将按钮设置为大于图标.这应该在图标周围留下空白.