滚动 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