BIM Coordinator Program (INT) April 22, 2024
Find the next step in your career as a Graphisoft Certified BIM Coordinator!
Archicad C++ API
About Archicad add-on development using the C++ API.

How are you supposed to set up column headers in ListBox.

Anonymous
Not applicable
I'm trying to make a ListBox that shows multiple columns. I can get that much working but I can only seem to put a header on the first column. Here's my code:

DGListSetHeaderItemCount(dialogID, ResultsList, 2);
DGListSetHeaderFlags(dialogID, ResultsList, true, false, false);
DGListSetHeaderItemFlags(dialogID, ResultsList, 1, DG_IS_LEFT|DG_IS_NOTRUNC, true);
DGListSetHeaderItemText(dialogID, ResultsList, 1, "Property");
DGListSetHeaderItemFlags(dialogID, ResultsList, 2, DG_IS_LEFT|DG_IS_NOTRUNC, true);
DGListSetHeaderItemText(dialogID, ResultsList, 2, "Value");

//set up the columns
w = DGListGetItemWidth(dialogID, ResultsList);
DGListSetTabFieldCount (dialogID, ResultsList, 2); //two columns in the data
DGListSetTabFieldData(dialogID, ResultsList, 1, 0, w/2-1, DG_IS_LEFT, DG_IS_NOTRUNC, true, true);
DGListSetTabFieldData(dialogID, ResultsList, 2, w/2, w, DG_IS_LEFT, DG_IS_NOTRUNC, false, true);

//some test data
DGListInsertItem (dialogID, ResultsList, DG_LIST_BOTTOM);
DGListSetItemText (dialogID, ResultsList, DG_LIST_BOTTOM, "testppty\ttestvalue");

I saw another post that suggested that you have to set the header size, eg
(DGListSetHeaderItemSize(dialogID, ResultsList, 1, 100);
but that doesn't seem to have any effect on the problem.

How do I get the header text on the second column to appear?
2 REPLIES 2
Ralph Wessel
Mentor
LesWoolsey wrote:
I'm trying to make a ListBox that shows multiple columns. I can get that much working but I can only seem to put a header on the first column.
Have you tried setting the number of columns first and then applying the header?
Ralph Wessel BArch
Anonymous
Not applicable
That fixed it thanks!
Learn and get certified!