Сначала я делаю программу для отображения таблицы в wxListCtrl, она работала, но для ограниченного объема данных.
это показывает проблему как: -
когда я выполню программу. кадр делает видимым через некоторое время ... но работает
затем я перехожу к использованию wxThread, теперь все идет хорошо, теперь, когда я выполняю программный фрейм, сразу видимый, потому что я пишу Sleep (1000), так что он добавляет строку в wxListCtrl один за другим, но это дает неожиданный результат, зависит от того, сколько строки в базе данных ..
мой код: -
# include "thread.h"
# include "login.h"
# include "sql.h"
# include <mysql.h>
class List_Ctrl_Data;
MyThread :: MyThread(login* login_obj)
{
this->temp = login_obj;
}
void *MyThread :: Entry()
{
int i=1,j,k=0 ;
while(i!=100)
{
long index=this->temp->data_list_control->InsertItem(i,wxT("amit"));
for(j=1;j<3;j++)
{
this->temp->data_list_control->SetItem(index,j,wxT("pathak"));
}
k++;
if(k==1)
{
k=10;
this->Sleep(1000);
}
i++;
}
}
здесь data_list_control является объектом wxListCtrl, с помощью потока я заполняю значение внутри wxListCtrl.
некоторые люди советовали мне, что здесь вы снова и снова выбиваете управление кадром (wxListCtrl) из записи потока,
Вот почему кадр зависает, вы должны использовать для этого wxPost или AddPendingRequest, я не думаю, что это будет работать,
я пытался объяснить тебе мой вопрос, но ты все еще чувствуешь, что хочешь что-нибудь спросить, добро пожаловать ... если ты поможешь мне, это будет много для меня