急急急!!!关于在线程中动态创建控件的问题,请高手指点!!!急急急
代码如下:
.h文件中:
class TMyThread : public TThread
{
public:
__fastcall TMyThread(void);
private:
void __fastcall Execute();
};
.cpp文件中:
__fastcall TMyThread::TMyThread(void): TThread(true)
{
FreeOnTerminate=true;
Resume();
}
void __fastcall TMyThread::Execute()
{
Form1->createview();
}
void __fastcall TForm1::Button1Click(TObject *Sender)
{
TMyThread *mythread = new TMyThread;
}
void __fastcall TForm1::createview() //createview()是我自己定义的函数
{
//动态生成LISTVIEW列表
TListView *tempview = new TListView(Form1);
tempview->Visible = true;
tempview->Parent = Form1;
}
就是以上代码运行后出现2个问题:
第一:点击Button按钮时没有创建listview控件
第二:关闭应用程序时出现以下错误提示:
应用程序发生异常 未知的软件异常(0x0eedfade),位置为0x77e8bc3f。
望各位大侠出手相助!
问题点数:50、回复次数:7Top
1 楼caizhen2000_82(猛将兄!!!)回复于 2006-03-12 13:42:42 得分 25
1:
void __fastcall TForm1::Button1Click(TObject *Sender)
{
TMyThread *mythread = new TMyThread();
mythread->Execute;
}
2:估计是内存未释放!!Top
2 楼cfs1979(学无止境)回复于 2006-03-13 08:48:58 得分 0
TO:caizhen2000_82(猛将兄!!!)
你的方法不行呀,mythread->Execute;根本没有这个方法。
估计是内存未释放?可以说的具体一点吗?
希望大家给出可行的解决方案,在线等!Top
3 楼chpst(斗转星移)回复于 2006-03-13 11:29:12 得分 25
Form1->createview(); Form1??
你要把ListView 放在那里?Top
4 楼cfs1979(学无止境)回复于 2006-03-13 13:02:09 得分 0
放在form1上呀
Top
5 楼chpst(斗转星移)回复于 2006-03-13 15:07:29 得分 0
__fastcall TMyThread::TMyThread(void): TThread(true)
{
TListView *ListView1 = new TListView(Form1);
ListView1->Parent= Form1
FreeOnTerminate=true;
Resume();
}
放在构造函数中。Top
6 楼cfs1979(学无止境)回复于 2006-03-14 14:47:07 得分 0
TO: chpst(斗转星移)
非常感谢你的帮助,2个问题全部解决,不过又出现了新的问题!
动态生成的listview如何在createview()函数中调用呀Top
7 楼cfs1979(学无止境)回复于 2006-03-16 10:43:26 得分 0
怎么没有人回答呀?????Top




