滚动 wx.Panel
Scroll in wx.Panel
有一个对象:
self.m_panelDraw = wx.Panel(self.panel, -1, size=(400, 150), style=wx.SUNKEN_BORDER|wx.TAB_TRAVERSAL|wx.FULL_REPAINT_ON_RESIZE)
我想向这个对象添加一个 SVG 文档:
svgStr = svg_code_generation()
cdc = wx.ClientDC(self.m_panelDraw)
dc = wx.GCDC(cdc)
odc = wx.DCOverlay(self.Overlay, cdc) # self.Overlay = wx.Overlay()
odc.Clear()
bmp = transformation_svg_to_bitmap(svgStr, 1)
if bmp is not None:
dc.DrawBitmap(bmp, 0, 0)
假设有一个 SVG 文档:width="1000" height="600"。尺寸 wx.Panel (400, 150)。结果是:
很明显SVG文件没有全部放好(合乎逻辑)
问题:我可以通过某种方式向 wx.Panel 添加滚动吗?
我强烈建议您查看 wxPython 的 ScolledPanel
小部件或 wx.ScrolledWindow
小部件。
您可能还会发现有关 wx.Scrolled
的文档有帮助:https://wxpython.org/Phoenix/docs/html/wx.Scrolled.html
有一个对象:
self.m_panelDraw = wx.Panel(self.panel, -1, size=(400, 150), style=wx.SUNKEN_BORDER|wx.TAB_TRAVERSAL|wx.FULL_REPAINT_ON_RESIZE)
我想向这个对象添加一个 SVG 文档:
svgStr = svg_code_generation()
cdc = wx.ClientDC(self.m_panelDraw)
dc = wx.GCDC(cdc)
odc = wx.DCOverlay(self.Overlay, cdc) # self.Overlay = wx.Overlay()
odc.Clear()
bmp = transformation_svg_to_bitmap(svgStr, 1)
if bmp is not None:
dc.DrawBitmap(bmp, 0, 0)
假设有一个 SVG 文档:width="1000" height="600"。尺寸 wx.Panel (400, 150)。结果是:
很明显SVG文件没有全部放好(合乎逻辑)
问题:我可以通过某种方式向 wx.Panel 添加滚动吗?
我强烈建议您查看 wxPython 的 ScolledPanel
小部件或 wx.ScrolledWindow
小部件。
您可能还会发现有关 wx.Scrolled
的文档有帮助:https://wxpython.org/Phoenix/docs/html/wx.Scrolled.html