我在一个线程里使用showmessage('end!');怎么出错啦?大家帮我看看代码!谢谢!
代码如下:procedure TMyThread.Execute;
var
  i:cardinal;
begin
  i:=0;
  while (i<100) do
  begin
    synchronize(stepprogress);
    Inc(i);
    if Terminated then Exit;
  end;
  showmessage('search end!');
end;我想让程序在线程的工作做完以后show一个信息框出来!
运行的时候出错:canvas does not allow drawing !
是什么原因呀?

解决方案 »

  1.   

    用application.messagebox('search end',nil,MB_OK);试试
      

  2.   

    编译没有通过:Undeclared identifier: 'application'
      

  3.   

    编译通过了,刚才没有uses
    信息框也弹出来了
    但是信息框的标题栏上怎么显示“错误”字样
    可以改成别的吗?
      

  4.   

    用messagebox,看看参数,有设置caption的!
      

  5.   

    MessageBox(application.handle,'提示','hsdfasd',0);
      

  6.   

    MessageBox(0,'search end','search end',MB_OK);
      

  7.   

    你可以在create函数中将Freeonterminate属性设为true 就ok了
      

  8.   

    showmessage里的标题是application的标题
    不能改