1

可以在 wxpython 中向静态文本添加滚动条吗?

问题是我正在创建这个静态文本:

self.staticText1 = wx.StaticText(id=wxID_FRAME1STATICTEXT1,label=u'some text here',name='staticText1', parent=self.panel1, pos=wx.Point(16, 96),
                                size=wx.Size(408, 216),style=wx.ST_NO_AUTORESIZE | wx.THICK_FRAME | wx.ALIGN_CENTRE | wx.SUNKEN_BORDER)
    self.staticText1.SetBackgroundColour(wx.Colour(255, 255, 255))
    self.staticText1.SetBackgroundStyle(wx.BG_STYLE_SYSTEM)
    self.staticText1.SetFont(wx.Font(9, wx.SWISS, wx.NORMAL, wx.BOLD, False,u'MS Shell Dlg 2'))
    self.staticText1.SetAutoLayout(True)
    self.staticText1.SetConstraints(LayoutAnchors(self.staticText1, False,True, True, False))
    self.staticText1.SetHelpText(u'')

但后来我使用 StaticText.SetLabel 更改标签,新文本太大而无法适应窗口,所以我需要在静态文本中添加一个滚动条..

我尝试将 wx.VSCROLL 添加到样式中,并且滚动条显示但无法向下滚动以查看其余文本..

4

1 回答 1

4

wx.StaticText旨在从不响应鼠标事件并且从不关注用户。鉴于这是它在生活中的作用,滚动条似乎与其用途不一致。

有两种方法可以得到你想要的: 1)你可以使用TextCtrl带有 TE_READONLY 样式的常规(见这里);或2)您可以制作一个包含您的StaticText控件的滚动窗口。

于 2009-08-18T03:16:16.877 回答