edit1.setfocus放在create中会产生异常,放到formshow事件中就ok了。
但 CBIF.Items.Clear;又可以在create中(cbif为 combobox控件)
不知道为什么?还有希望点击form上的一个按钮后,鼠标变成等待的形状,同时 form失去响应,用下面语句
为什么不起作用
     screen.Cursor:=crdefault;
     self.Enabled:=true;
等事件处理完毕再调用一下语句恢复
     screen.Cursor:=crdefault;
     self.Enabled:=true;

解决方案 »

  1.   

    formshow在create后触发,屏幕上还没有窗口,你获得个哪门子焦点??self.Cursor:=crwait;
      

  2.   

    edit1.setfocus放在create中会产生异常,放到formshow事件中就ok了。
    但 CBIF.Items.Clear;又可以在create中(cbif为 combobox控件)
    不知道为什么?在窗体事件中,怎么可以设置焦点呢?总得有个先后吧,窗体都还在创建,而作为窗体上的一个EDIT怎么又可能已经创建了呢?
      

  3.   

    formshow事件是窗体已经创建好,只是没有显示出来.
      

  4.   

    在delphi里没有 只有 crsqlwait ,换成其它的也不行
      

  5.   

    换成 self.cursor  还是不行呀
      

  6.   

    窗体用了如下代码:
    Self.Enabled:=false;就不会有这个效果了~
      

  7.   

    edit1.setfocus放在create中会产生异常//因为setfocus是在显示完成之后才生效的,create只是在内存中建立起来该窗体),
    放到formshow事件中就ok了//因为formshow就显示出来了
    但 CBIF.Items.Clear;又可以在create中(cbif为 combobox控件)//Items.Clear只是把内存中该控件中维护的项目删除,所以create中可以执行
    不知道为什么?还有希望点击form上的一个按钮后,鼠标变成等待的形状,同时 form失去响应,用下面语句
    为什么不起作用
         screen.Cursor:=crdefault;//screen.Cursor := crHourGlass;
         self.Enabled:=true;//一般不用设置这个值,即使用户点击某按钮,系统也要等到执行完此过程,才能有反应
    等事件处理完毕再调用一下语句恢复
         screen.Cursor:=crdefault;
         self.Enabled:=true;