标题: 最近正在写了一个兵种控件,结果发现怎么搞都无法响应事件。, 谁能帮我改一下代码?
性别:未知-离线 司徒苍月
(kagami☆sama)

越国公
荆南节度使
枢密直学士

Rank: 22Rank: 22Rank: 22Rank: 22
柱国(正二品)
组别 节度使
级别 大将军
好贴 7
功绩 2823
帖子 28883
编号 52341
注册 2005-11-2
来自 创界山
家族 司徒实业


发表于 2006-10-11 12:57 资料 主页 个人空间 短消息 看全部作者
直接呼叫 Win32 API sleep (n) 即可
n为毫秒

Public Declare Sub Sleep Lib "Kernel32" (ByVal dwMilliseconds As Long)

private sub taskwait()
dim i as long
i = n '自定义数值
call task1 '调第一个任务
sleep(i)
call task2 '掉第二个任务
end sub

[ 本帖最后由 司徒苍月 于 2006-10-11 13:01 编辑 ]


顶部
性别:未知-离线 司徒苍月
(kagami☆sama)

越国公
荆南节度使
枢密直学士

Rank: 22Rank: 22Rank: 22Rank: 22
柱国(正二品)
组别 节度使
级别 大将军
好贴 7
功绩 2823
帖子 28883
编号 52341
注册 2005-11-2
来自 创界山
家族 司徒实业


发表于 2006-10-12 17:10 资料 主页 个人空间 短消息 看全部作者
用循环执行sleep(1000),这样循环几次就是几秒
enter的keyascii好像是13,那么取keyascii=13的时候跳出循环exit for即可,鼠标左键是0x1
举例
事件A
for i = 1 to 500
   if check1=true  then  'check1作为全局变量
       exit for
   end if
   sleep(1000)
next i
事件B
-----------------------------
将下面的代码放入Form_KeyPress事件中
if keyascii=0x1 or keyascii=13 then '13是回车,0x1是鼠标左键
    check1=true
else
    check1=false
end if

注:该窗体Form_KeyPress值必须为true

[ 本帖最后由 司徒苍月 于 2006-10-12 17:13 编辑 ]


顶部
性别:未知-离线 司徒苍月
(kagami☆sama)

越国公
荆南节度使
枢密直学士

Rank: 22Rank: 22Rank: 22Rank: 22
柱国(正二品)
组别 节度使
级别 大将军
好贴 7
功绩 2823
帖子 28883
编号 52341
注册 2005-11-2
来自 创界山
家族 司徒实业


发表于 2006-10-12 22:21 资料 主页 个人空间 短消息 看全部作者
0x1换成vbKeyLButton
顶部
性别:未知-离线 司徒苍月
(kagami☆sama)

越国公
荆南节度使
枢密直学士

Rank: 22Rank: 22Rank: 22Rank: 22
柱国(正二品)
组别 节度使
级别 大将军
好贴 7
功绩 2823
帖子 28883
编号 52341
注册 2005-11-2
来自 创界山
家族 司徒实业


发表于 2006-10-13 20:34 资料 主页 个人空间 短消息 看全部作者
按指定键,光标在哪里呢?

这里有段,鼠标问题解决了

Dim check1 As Boolean
Dim check2 As Boolean
Private Declare Sub Sleep Lib "Kernel32" (ByVal dwMilliseconds As Long)
Private Sub Command1_Click()
If check2 = True Then
    Exit Sub
End If
   
Call fun1

End Sub



Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
If KeyAscii = 13 Then  '13是回车
    check1 = True
Else
    check1 = False
End If
End Sub

Private Sub Form_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then  '13是回车
    check1 = True
Else
    check1 = False
End If
End Sub


Private Sub Form_Load()
check2 = False
End Sub
Private Sub fun1()
Dim i As Long
check2 = True
For i = 1 To 200
   If check1 = True Then 'check1作为全局变量
       Exit For
   End If
   Sleep (100)
   Debug.Print CStr(i)
Next i
check2 = False
End Sub

Private Sub Form_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
If Button = 1 Then '1是左键
    check1 = True
Else
    check1 = False
End If
End Sub

顶部
性别:未知-离线 司徒苍月
(kagami☆sama)

越国公
荆南节度使
枢密直学士

Rank: 22Rank: 22Rank: 22Rank: 22
柱国(正二品)
组别 节度使
级别 大将军
好贴 7
功绩 2823
帖子 28883
编号 52341
注册 2005-11-2
来自 创界山
家族 司徒实业


发表于 2006-10-25 20:07 资料 主页 个人空间 短消息 看全部作者


QUOTE:
原帖由 阿尔法孝直 于 2006-10-25 12:36 发表
不是让Frame看不见,而是让放在里面的透明Label控件显示在Progressbar的上面。

比如像曹操传中的生命条一样。

光靠vb代码不行,好像要什么ocx吧- -
顶部
性别:未知-离线 司徒苍月
(kagami☆sama)

越国公
荆南节度使
枢密直学士

Rank: 22Rank: 22Rank: 22Rank: 22
柱国(正二品)
组别 节度使
级别 大将军
好贴 7
功绩 2823
帖子 28883
编号 52341
注册 2005-11-2
来自 创界山
家族 司徒实业


WebBrowser控件
在Microsoft Internet Control里

方法
WebBrowser.Navigate 图片路径
顶部
性别:未知-离线 司徒苍月
(kagami☆sama)

越国公
荆南节度使
枢密直学士

Rank: 22Rank: 22Rank: 22Rank: 22
柱国(正二品)
组别 节度使
级别 大将军
好贴 7
功绩 2823
帖子 28883
编号 52341
注册 2005-11-2
来自 创界山
家族 司徒实业




QUOTE:
原帖由 阿尔法孝直 于 2007-4-6 19:06 发表
我知道这种方法,但我的本意是要让gif动画放在另一个用放壁纸作背景的image控件上,且动画背景要透明。

试试用anigif.ocx,不过我没找到破解版,所以无法尝试。。。。。。。。
顶部

正在浏览此帖的会员 - 共 17 人在线




当前时区 GMT+8, 现在时间是 2024-10-3 13:28
京ICP备2023018092号 轩辕春秋 2003-2023 www.xycq.org.cn

Powered by Discuz! 5.0.0 2001-2006 Comsenz Inc.
Processed in 0.009313 second(s), 9 queries , Gzip enabled

清除 Cookies - 联系我们 - 轩辕春秋 - Archiver - WAP