调用一个API函数,让此时鼠标呈手形。

解决方案 »

  1.   

    谢谢各位,但是:jinhaiou(辛) :
    时间处理器是什么?是加个Timer吗?没用的VB是单进程的, Timer事件不触发ferrytang(ferry) :
    这不是我要的butter527(butter)   :
    调用什么API?
      

  2.   

    进程条的进度用Timer控制根据时间显示进度,
    并且控制执行完存储过程后才到100%
      

  3.   

    用循环控制,把操作100等份
    FOR I= 1 TO 100
    ;;处理
    DoEvnts
    NEXT
      

  4.   

    lihonggen0(用VB) 说得对,用进度条表示不就行了?
    还好看!
      

  5.   

    加另外一个窗体,在执行时将它显示出来,上面用"....."等,也可以用Timer控件将其做成动态的(几个点慢慢增多),表明正在运行。长时间的操作中用Doevents();
      

  6.   

    多谢各位。但是:
    1. 请看清我的问题, 首先, 大操作中是无法加DoEvents的, 因为这个大操作不一定由我控制, 比如说执行一个大数据库操作。一个操作就可能做很长时间。 怎么加DoEvents?2. 不能用Timer。 我试过, 在执行大操作时, 别的事件是不会触发的, 因为VB是单进程的。
      

  7.   

    如果是数据库操作
    用异步执行,如果不是把操作编译进dll
    然后在vb里调用这是个老问题了,因为vb的限制没什么非常好的解决办法
    你可以搜一下以前的贴子
      

  8.   

    其实这个问题在以前已经讨论过几次,方法形式多样,自己找找吧。  进度条.Show
      DoEvents 
      长任务。这种方法只是避免了运行窗体和进度条窗体的空白,在我的程序中运行还可以。
      

  9.   

    真搞笑?
    现在等待状态只有两种(算法先优化):
    1。沙漏
    2。进度条
    还有别的什么啊,说出来见识一下!?
    弄个光屁股小妞唱首歌?
    还是和用户说个笑话??放一段搞笑漫画?
    用这些招数?
    就算是c,java也是这些?
    只不过实现方式不一样,并不是不能实现!
    数据在加载的进度条可以放在mdi窗体的状态栏上面!
    自己写一个类,在任何想要的地方调用,不就可以了吗?
      

  10.   

    在长时间操作过程中多加Doevents.
      

  11.   

    尝试修改巨大烦琐的存储过程,以缩短程序执行过程。
    从存储过程中不断返回一些响应给用户。
    利用MSMQ的处理方式
      

  12.   

    该现象的原因是:
        客户端调用服务器段组建时,在服务器段未完成工作前客户端一直在等待服务器短的消息,它已失去了控制权限,因此才会出现“死机”
     
    可以这样解决:
    设置
        App.OleServerBusyTimeout = 100
        App.OleRequestPendingTimeout = 100
        
        可将100设置更改,客户端会提示“Switch to ...”
        你也可以将"Switc to ..." 更改成你所需要的提示!
      

  13.   

    我认为,使用异步调用数据库操作方式是最标准的办法,
    但是可能比较麻烦。变通一点,就使用ACTIVEX的EXE,做一个进程外部件,
    在这个部件中显示一个置顶的窗口,再放点动画啊什么的。然后就可以在大操作前启动该部件,在操作完成后终止它。
      

  14.   

    '调用存储过程代码
    ......
    DoEvents 
    '其它代码
    .....