我有一个wxpython csv阅读器。我在网格上显示结果。网格大约占我屏幕的一半。我想一次显示100行。我指定那里有100行,但我不能滚动到底部50.我已经证明行是通过写入我看不到的行然后复制整列并在Excel中粘贴。我期待看到的是一个滚动条,允许我滚动到底部50.我允许编辑列的大小。当我增加列的高度时,会出现滚动条,但仍然只允许我查看前50列。 (如果用户使列高比正常大一英寸,我的滚动会增加一英寸)我最好的猜测是我启动/获得最大尺寸的大小调整器,面板和网格组合的方式有问题。我已经删除了不需要的代码,但布局面板和框是我的整体/主面板和框。
import wx.grid as grd
import wx
self.layoutPanel = wx.Panel(self)
self.layoutBox = wx.BoxSizer(wx.VERTICAL)
self.previewPanel = wx.Panel(self.layoutPanel)
self.previewBox = wx.BoxSizer(wx.VERTICAL)
self.resultGrid = grd.Grid.__init__(self, self.previewPanel,0)
self.resultGrid.CreateGrid(105,20)
self.previewBox.Add(self.resultGrid,0, wx.GROW)
self.resultGrid.SetSize(self.resultGrid.GetBestSize())
self.previewPanel.SetSizer(self.previewBox)
self.layoutBox.Add(self.previewPanel,0, wx.ALL)
self.layoutPanel.SetSizerAndFit(self.layoutBox)
self.layoutPanel.Layout()
答案 0 :(得分:0)
这个问题嵌套在两个面板彼此相邻的地方。这通常是“好的”,但网格有点复杂。我彻底摆脱了previewPanel和previewBox,解决了这个问题。然而另一个问题是FIT。适合使面板尽可能小,这不是我想要的。在未显示的代码中,我发生了重新调整大小,当我这样做时,我使用了setSizeAndFit来取消滚动。我将其更改为setSize并且滚动条保持不变。