我剛剛發現有一個mfc對話框可以容納的控件數量有限制,我有653個控件,對話框只包含332個控件,我搜索了一個解決方案,一些建議的屬性表和屬性頁,但我不想在一些標籤中分發這些653控件!我希望它們都在一個選項卡中,所以,除了使用選項卡控件或屬性表外,還可以做些什麼?它有可能嗎?如何在mfc表單中保留很多控件?
這是形式
我剛剛發現有一個mfc對話框可以容納的控件數量有限制,我有653個控件,對話框只包含332個控件,我搜索了一個解決方案,一些建議的屬性表和屬性頁,但我不想在一些標籤中分發這些653控件!我希望它們都在一個選項卡中,所以,除了使用選項卡控件或屬性表外,還可以做些什麼?它有可能嗎?如何在mfc表單中保留很多控件?
這是形式
看來某種網格控制是你所追求的。它是一個包含許多單元格的表格形式的單個控件。表格和單元格都可以定製。 Code Project有一個專門用於grid controls的整個部分。以下是前幾個從部分免費:
http://www.codeproject.com/Articles/3176/The-ALXGrid-Control-Library
http://www.codeproject.com/Articles/8/MFC-Grid-control-2-27
http://www.codeproject.com/Articles/2879/Virtual-Grid-Control-1-04
653控制?真的嗎?無論資源編輯器是否可以處理它,這種編程風格都是被禁止的!此外,這是浪費窗戶把手。您應該考慮使用列表/樹代替。
以編程方式創建您的控件!繼承CWnd
並創建您的own control。然後添加一組控件,並在OnCreate
中動態創建它們。
「簡單禁止」?我很樂意看到有關文件的支持,但我認爲這很誇張。如果'Static'完全符合你的需求,爲什麼要創建你自己的控件呢? –
我們都沒有禁止它,但是在對話框上的650個控件也在我的腦海中引發了一個巨大的紅色警告標誌。 – dwo
@dwo:是的,你說得對,但是列表並不適合我想要展示給客戶的東西,但是網格,表格或類似的東西已經完美了,但MFC沒有這樣的東西,是嗎?! 其實我正在用這些653控件創建一張桌子! 30行20列 –
我知道,資源編輯器有一定的限制,但不應該結轉到對話框本身。你如何創建這些控件? –
您正在使用哪種版本的Visual C++?我做了一個快速搜索,有人表示VS2010沒有這個限制。 – Nerdtron
@MarkRansom:我在窗體上有一個選項卡控件,我添加了一些對話框作爲解決方案的資源,並且選項卡控件使用這些對話框作爲選項卡頁面,其中一個資源應該包含這653個控件,652個靜態文本控件和一個按鈕,並且我使用visual studio工具箱將控件添加到對話框,但我沒有以編程方式添加它們。 –