1. 程式人生 > >MFC 如何給ComboBox下拉框控制元件新增item,如何新增順序索引的資料項?

MFC 如何給ComboBox下拉框控制元件新增item,如何新增順序索引的資料項?

提到了新增item可以用AddString方法,效果如下:

我定義了一個數組:

CString strFont[5] = { _T("宋體"),_T("楷體"),_T("仿宋"),_T("黑體"),_T("華文細黑") };

想把這5個按陣列索引的順序新增到控制元件中。如何實現呢?

1.首先我通過類嚮導給下拉框控制元件所在的對話方塊添加了一個ComboBox變數,如圖所示。

新增後再對話方塊的cpp檔案的DoDataExchange函式中會自動生成一句程式碼:

DDX_Control(pDX, IDC_COMBO1, m_Combobox); 

表示將控制元件與新增的變數繫結。這樣就可以通過該變數來對控制元件進行操作。

2. 通過for迴圈將CString陣列逐個新增到控制元件: 

for (int i = 0; i < 5; i++)
    {

          m_Combobox.AddString(strFont[i]); 

    }

效果如圖:可以看到item的順序和陣列不一致。

3. 換成InsertString方法:

for (int i = 0; i < 5; i++)
    {

          m_Combobox.InsertString(i,strFont[i]);

    }

再看效果,如圖,順序對了!