带有股票图标但没有文字的wxpython按钮
wxpython button with stock icon but no text
我正在使用 wxPython 并想创建一个带有股票图标但没有文本的按钮。如果我这样做
wx.Button(self,wx.ID_ADD)
我得到一个带有加号图标和旁边单词 'Add' 的按钮。
如何获得只有图标的按钮?
乍一看,wx.BU_NOTEXT
似乎适用于此,但实际上并非如此,因为 wxWidgets 假设如果使用此样式,则按钮应该具有明确关联的位图它。
因此,最简单的解决方法是通过调用 btn->SetBitmapLabel(wxArtProvider::GetBitmap(wxART_PLUS, wxART_MENU))
(这是 C++,但也应该很容易转换为 Python)来实际设置此位图。如果你这样做,你就不需要再使用 wxID_ADD
作为按钮 ID,但如果你仍然想继续使用这个 ID,那么你还需要使用 wxBU_NOTEXT
来获得删除库存文本。
而且,与有意符合标准平台外观并因此可能显示或不显示图标取决于平台的库存按钮不同,此代码在任何地方都可以正常工作。
我正在使用 wxPython 并想创建一个带有股票图标但没有文本的按钮。如果我这样做
wx.Button(self,wx.ID_ADD)
我得到一个带有加号图标和旁边单词 'Add' 的按钮。
如何获得只有图标的按钮?
乍一看,wx.BU_NOTEXT
似乎适用于此,但实际上并非如此,因为 wxWidgets 假设如果使用此样式,则按钮应该具有明确关联的位图它。
因此,最简单的解决方法是通过调用 btn->SetBitmapLabel(wxArtProvider::GetBitmap(wxART_PLUS, wxART_MENU))
(这是 C++,但也应该很容易转换为 Python)来实际设置此位图。如果你这样做,你就不需要再使用 wxID_ADD
作为按钮 ID,但如果你仍然想继续使用这个 ID,那么你还需要使用 wxBU_NOTEXT
来获得删除库存文本。
而且,与有意符合标准平台外观并因此可能显示或不显示图标取决于平台的库存按钮不同,此代码在任何地方都可以正常工作。