我有一些自定義控件,我應該在其中創建單選按鈕或複選框。子控件的計數僅在運行時纔可用(它會加載一些文件,從中獲得此計數)。所以我需要創建可變數量的控件。我應該爲此使用哪個集合?解決方案1:簡單地使用std::vector<HWND>
(或CArray<HWND>
) - 不適合,因爲我想使用MFC(CButton)。當然,我可以Attach()
和後來Detach()
處理窗口每次我需要這個窗口,但它會給大開銷。在MFC中動態創建控件(集合問題)
解決方案2:使用std::vector<CButton*>
或CArray<CButton*>
或CList<CButton*>
或者......在這種情況下,我需要關心的是「新」和相應的「刪除」時,控制不必要的。我很健忘:)
MFC處理圖包含指向CButton的指針,我不能使用簡單的CArray<CButton>
,因爲每當他的尺寸增大時它會移動我的對象。
...問題是: 我應該使用哪個集合來包含MFC控件類的變量計數?
mmm ...是/我只需要在集合的尾部插入,然後創建窗口,然後在每次加載「另一個」文件時重新使用它。所以簡單的CArray將會更加適合,因爲CList會給出'左,右'元素的額外指針...... 感謝您的簡單明確的答案 – ProgramWriter 2010-04-02 23:54:40