如何解决滚动窗格中有大量图像的性能问题
我想创建一个包含数百张图像的滚动窗格。我的代码运行正常,直到 200 张图像,但对于大量图像,开始变得非常缓慢。在 Core i9 上,这段代码(只是我实际操作的精简版)需要将近 20 秒才能显示出来。知道我可以如何改进吗?
import wx
import wx.lib.scrolledpanel as scrolled
class ImgPanel(scrolled.ScrolledPanel):
def __init__(self,parent):
super(ImgPanel,self).__init__(parent,style = wx.SUNKEN_BORDER)
self.imgSizer = wx.BoxSizer(wx.VERTICAL)
for i in range(500):
image = wx.Bitmap('chrome.png')
bitmap=wx.StaticBitmap(parent=self)
bitmap.SetBitmap(image)
self.imgSizer.Add(bitmap,1,wx.EXPAND)
self.SetSizer(self.imgSizer)
self.SetAutoLayout(1)
self.SetupScrolling()
self.IsRectReady = False
self.newRectPara=[0,0]
class MyFrame(wx.Frame):
def __init__(self,parent,title,width,height):
super(MyFrame,title=title,size=(width,height))
self.imgPanel = ImgPanel(self)
self.frameSizer = wx.BoxSizer(wx.HORIZONTAL)
self.frameSizer.Add(self.imgPanel,wx.EXPAND)
self.SetAutoLayout(True)
self.SetSizer(self.frameSizer)
self.Layout()
self.Centre()
self.Show(True)
def main():
app = wx.App()
frame = MyFrame(None,"test",1200,800)
app.SetTopWindow(frame)
app.MainLoop()
if "__main__" == __name__ :
main()
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。