2012-02-10 84 views
1

當使用wx.grid創建wxpython表格時,如何在用戶調整框架大小時自動擴展表格中的行數和列數?在wx中自動調整表格的大小

如果我創建5 * 5表格(網格)以適應我的框架和用戶調整框架(比如,使其變大),我如何實現自動增加到響應的行數和/或列數幀尺寸增加?

+0

你確定你不能只使用網格自身剪裁來達到你想要的效果嗎? sizer佈局模型將允許您裁剪網格以適合該區域;只需添加所有的行/列,並允許窗口的大小約束可見區域... – BRFennPocock 2012-02-10 15:24:43

+0

對不起,如果我不明白你的理解......你的意思是設置一個1000 * 1000的表,並用sizer clipp它來顯示,20 * 20,當用戶增加桌子的大小時,他們會看到更多?如果這就是你所說的話,那麼這並不比用戶真正需要的更多的記憶? – 2012-02-10 15:33:22

+1

基本上,是的。儘管它完全取決於你用'wxGrid'做什麼。如果你有意地自己處理滾動/分頁,這很好,但wxWidgets專門爲你創建網格的全尺寸,並使用sizer和其他小部件來處理剪切和滾動。正如@Mike Driscoll指出的那樣,下面,你確實有「重新發明這些輪子」的鉤子,但這並不是框架被設計用於一般的方式。 – BRFennPocock 2012-02-10 15:42:23

回答

1

可悲的是,沒有內在的方式來做到這一點,我知道。您需要捕獲幀的EVT_SIZE,然後根據需要使用AppendRows和AppendCols。您需要考慮幀大小發生了何種變化,並且只有在變大時纔會添加,而不是變小。