Wxpython wx.lib.agw.ribbon中只有一个SimpleButton会导致布局错误
好的结果是: 坏结果是: 我没有ribbon界面的用户体验,因此无法理解会发生什么:Wxpython wx.lib.agw.ribbon中只有一个SimpleButton会导致布局错误,wxpython,ribbon,Wxpython,Ribbon,好的结果是: 坏结果是: 我没有ribbon界面的用户体验,因此无法理解会发生什么: 是虫子吗 或者这是故意的行为,我应该以某种方式调整布局 守则: import wx import wx.lib.agw.ribbon as RB #import ribbon as RB class MyDialog(wx.Dialog): def __init__(self, *ls, **kw): wx.Dialog.__init__(self, *ls, **kw) ribb
- 是虫子吗
- 或者这是故意的行为,我应该以某种方式调整布局
import wx
import wx.lib.agw.ribbon as RB
#import ribbon as RB
class MyDialog(wx.Dialog):
def __init__(self, *ls, **kw):
wx.Dialog.__init__(self, *ls, **kw)
ribbon = RB.RibbonBar(self, -1)
page = RB.RibbonPage(ribbon, wx.ID_ANY, "Page")
panel = RB.RibbonPanel(page, wx.ID_ANY, "Create Project")
bbar = RB.RibbonButtonBar(panel)
bmp = wx.ArtProvider.GetBitmap(wx.ART_NEW, wx.ART_OTHER, wx.Size(48, 48))
bbar.AddSimpleButton(wx.ID_ANY, "New", bmp, '')
#bbar.AddSimpleButton(wx.ID_ANY, "New2", bmp, '') # uncomment for the good result
ribbon.Realize()
s = wx.BoxSizer(wx.VERTICAL)
s.Add(ribbon, 0, wx.EXPAND)
self.SetSizer(s)
app = wx.PySimpleApp()
dlg = MyDialog(None, title="Test Ribbon", size=(200,150))
dlg.ShowModal()
dlg.Destroy()
好像有个虫子。当
RibbonPanel
上的文本比其内容长时,它会断开。试试这个:
panel = RB.RibbonPanel(page, wx.ID_ANY, "Create...")
您可以在按钮旁边添加一些空的小部件来解决这个问题
这里有一组很好的文档和示例: