python wxpython backend wxagg_如何刷新wx.面板正确地?
我正在使用wxPython創(chuàng)建一個(gè)圖像查看器。我想單獨(dú)查看多個(gè)圖像,所以我寫(xiě)了下面的代碼(部分)。在from matplotlib.backends.backend_wxagg import FigureCanvasWxAgg as FigureCanvas
from matplotlib.figure import Figure
class CanvasPanel(wx.Panel):
def __init__(self, parent):
wx.Panel.__init__(self, parent)
self.figs = []
self.axes = []
self.canvases = []
self.panelsizers = []
def draw(self, data):
"""data is 2D numpy array"""
fig = Figure()
self.figs.append(fig)
ax = fig.add_subplot(111)
ax.imshow(data, interpolation='none')
self.axes.append(ax)
canvas = FigureCanvas(self, wx.ID_ANY, fig)
self.canvases.append(canvas)
panelsizer = wx.BoxSizer()
panelsizer.Add(canvas, 1, wx.GROW)
self.panelsizers.append(panelsizer)
self.SetSizer(panelsizer)
除了一個(gè)小問(wèn)題,這幾乎是完美的。在
當(dāng)我運(yùn)行代碼并打開(kāi)一個(gè)圖像時(shí),窗口如下所示。在
這個(gè)窗口由三個(gè)部分組成wx.面板中間一個(gè)是畫(huà)布面板。您可以看到,CanvasPanel的大小有點(diǎn)小,即使比例=1和樣式=wx.成長(zhǎng). 此外,當(dāng)我通過(guò)拖動(dòng)窗口的一角來(lái)調(diào)整窗口大小時(shí),它看起來(lái)如下所示。在
畫(huà)布面板的大小更改正確!為什么?如何在不調(diào)整大小的情況下修改代碼以適應(yīng)查看器中的畫(huà)布面板。在
總結(jié)
以上是生活随笔為你收集整理的python wxpython backend wxagg_如何刷新wx.面板正确地?的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: adapt和adopt的区别_“适应”是
- 下一篇: python队列来做什么_python分