2010-06-02 33 views
2

我試圖填充wxListCtrl但嘗試各種方法後似乎無法填充項目。如何填充wxListCtrl?

基本上,我想要一個列表控件,它將有三列標題,並將在行中顯示值。但我試過InsertItem,SetItem或InsertColumn方法,但只能顯示列標題而不顯示行數據。任何幫助將不勝感激!提前致謝!

回答

0

您可以添加列如下:

int column_width = 90; 
my_list_ctrl->InsertColumn(0, L"ColumnText", wxLIST_FORMAT_LEFT, column_width); 

您可以添加項目是這樣的:

int image_index = 0; 
long list_index = my_list_ctrl->InsertItem(0, L"My Item text", image_index); 

您可以設置子項的這樣的文字:

int column_index = 1; 
my_list_ctrl->SetItem(list_index, column_index, L"Text"); 

您可以像這樣爲您的列表設置圖片列表:

my_list_ctrl->SetImageList(&img_list, wxIMAGE_LIST_SMALL); 
+0

謝謝!這工作! 但是,您必須先插入一列。這是它的樣子: wxString col1(wxT("Column1")); // column heading wxString mystring(wxT("My value")); //column value long indx1 = alist->InsertColumn(0, col1); //you need indx1 var to insert item at long itemIndex1 = alist->InsertItem(indx1, mystring, 0); azm882 2010-06-02 20:26:46

+0

@ azm882:沒問題,很樂意幫忙。 – 2010-06-02 20:29:48

+0

再次感謝Brian!我有額外的問題,雖然...使用上述方法,我可以顯示column1中的value1就好了...但是,我無法在colum2中顯示value2 ...我試着做另一個InsertItem或SetItem,但我只能夠一次顯示一行的值......我想要做的是在colum1中顯示「user id」和在column2中顯示「user name」(這將構成第1行),然後在下一行顯示另一行用戶名+用戶ID。 再次感謝! – azm882 2010-06-02 21:24:45