我目前有一個wxPanel,我通過使用wx.PaintDC的設備上下文繪製線條,文本等來響應繪製事件。但是,我的繪圖可能會超出面板的大小,並會從可見屏幕上繼續顯示。要看到更多的圖紙的唯一方法是擴大應用程序窗口,這是不切實際的,並且仍然可能不允許在非常大的圖紙情況下看到完整的圖紙。理想情況下,我希望能夠滾動繪圖,以便應用程序窗口不需要調整大小,並可以看到大圖。在wxPython中滾動畫框
環顧四周,似乎我可能想使用wxScrolledPanel而不是wxPanel。但是,我沒有成功使用這個 - 使用wxScrolledPanel只在使用控件(例如按鈕,文本字段)時才工作,而不是在設備上下文中繪製?
滾動已繪製面板的適當方法是什麼?
我整個ScrolledWindow演示來提供的wxPython曾幾何時,並已與該擺弄周圍 - 該解決方案是完全按照你描述。之前嘗試使用ScrolledPanel時遇到的問題似乎是因爲我只調用SetVirtualSize,而我也需要調用SetScrollRate。我最初並沒有調用PrepareDC,導致繪圖不能像滾動一樣更新。我已將此標記爲答案,謝謝。 – KingJ 2013-02-28 23:02:20