2011-06-01 66 views
1

我已經在資源編輯器中將組合框數據設置爲「第一,第二,第三」,但是當我編譯程序時,組合框完全是空的,我根本看不到任何項目。如何使用數據字段獲取組合框顯示值?

另外,如何設置默認選擇哪個項目?如何以編程方式更改當前選定的項目?

+0

您是否使用MFC CComboBox類來創建組合框? – yasouser 2011-06-01 14:17:25

+0

@yasouser,不,我剛剛在visual-studio資源編輯器中創建了組合框。 – Rookie 2011-06-01 14:39:00

回答

2

答案可以在這篇文章中找到:http://codeguru.earthweb.com/cpp/com-tech/atl/atl/print.php/c3599

由資源編輯器添加的DLGINIT資源是消息列表傳遞給子控件創建對話框之後。 MFC有代碼在ExecuteDlgInit方法中自動執行此操作,所以基於MFC的解決方案將「正常工作」;其他人將不得不提供自己的代碼進行初始化。它也似乎是由對話框編輯器插入的消息基於16位Windows API並需要32/64位Windows的轉換。

我建議忽略對話框編輯器提供的初始化數據並使用CB_ADDSTRING message來放置初始字符串。

其他一些很好的意見在這裏:http://www.flounder.com/combobox.htm

0

對於設定值,則可以使用AddString()方法mycombobox.AddString( 「第一」); mycombobox.AddString( 「第二」); mycombobox.AddString( 「第三」);要設置索引,可以使用SetCurSel()方法並將其設置爲默認值「first」。 mycombobox.SetCurSel(0);

line1;line2;line3 

在初始化時,所有的這些值將在一行中顯示:

0

在「數據」字段,如下輸入由分號;分隔的值。

這適用於VS 2015,我認爲早在VS 2008

相關問題