CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
不看会后悔的Windows XP之经验谈 简单快捷DIY实用家庭影院
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  C++ Builder >  基础类

急急急!!!关于在线程中动态创建控件的问题,请高手指点!!!急急急

楼主cfs1979(学无止境)2006-03-12 10:50:30 在 C++ Builder / 基础类 提问

代码如下:  
  .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

相关问题

  • 如何在线程里面创建一个窗口?请指点!(加分迅速)
  • 用API创建线程,退出时有问题,请各位指点
  • 创建与销毁控件的一点问题,请指点一下。
  • 创建线程!!!
  • 创建线程
  • 线程间操作无效: 从不是创建控件“lstContent”的线程访问它 请指教 急
  • 如何在MFC扩展dll内创建线程,并在线程里使用自定义的CDialog控件?
  • VS2005中的线程安全是不是太烦了?(从不是创建控件“xxx”的线程访问它)
  • 如何用代码创建list控件,不是界面中拖。急!!请高手指点!!
  • 怎么会出现这样的错误:在一个线程上创建的控件不能成为在另一个线程控件的父级。

关键词

  • 函数
  • tmythread
  • createview
  • fastcall
  • tempview
  • tlistview
  • listview
  • 动态
  • mythread
  • tthread

得分解答快速导航

  • 帖主:cfs1979
  • caizhen2000_82
  • chpst

相关链接

  • CSDN Blog
  • 技术文档
  • 代码下载
  • 第二书店
  • 读书频道

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo