I'm not using a virtual listctrl. And about my list declaration, I'm not sure what you mean. I used the IDE to create it. Do you mean this?
Code:
ListCtrl1 = new wxListCtrl(Panel1, ID_LISTCTRL1, wxDefaultPosition, wxSize(562,242), wxLC_REPORT, wxDefaultValidator, _T("ID_LISTCTRL1"));
And here's my insert function:
Code:
void Win_EvalFrame::print(long testnr, double time, long memory, char *message, long points)
{
ListCtrl1->Hide();
wxListItem t;
wxString w;
t.SetId(testnr-1);
t.SetColumn(0);
w.Printf(_("%ld"), testnr);
t.SetText(w);
ListCtrl1->InsertItem(t);
w.Printf(_("%.2lf"), time);
ListCtrl1->SetItem(t, 1, w);
w.Printf(_("%ld"), memory);
ListCtrl1->SetItem(t, 2, w);
ListCtrl1->SetItem(t, 3, wxString::FromAscii(message));
w.Printf(_("%ld"), points);
ListCtrl1->SetItem(t, 4, w);
ListCtrl1->Show();
}
My program launches a process and waits for it to finish a few seconds. The problem is, it can wait quite some time, up to 10 seconds. And it's annoying to have to wait until everything finishes to display everything in the list. I would rather see everything as it's added.
And another thing, not really related to wxlistctrl but related to wxwidgets: During this waiting, how can I make my main window ignore every windows message? Because if it waits a lot, it freezes, and it messes up some of the stuff I do. Is there any way to make it ignore all windows messages so that it can do what it needs to without problems?