| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1589 人关注过本帖
标题:怎样设置可以另enter键不连续
只看楼主 加入收藏
xin99v
Rank: 1
等 级:新手上路
帖 子:16
专家分:0
注 册:2008-9-28
结帖率:100%
收藏
 问题点数:0 回复次数:9 
怎样设置可以另enter键不连续
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Static count As Integer
        count = count + 1
        TextBox1.Text = "你点了我" + count.ToString + "次"
    End Sub
点一次就显示一次 ,,但是你恩住enter 键他会不断的运行,,,
我的意思是恩enter 键不能恩住,,,也要象鼠标那样一下一下点。。。。
高手指教!!!谢了··
搜索更多相关主题的帖子: enter 
2008-10-17 10:08
ghw111ghw
Rank: 1
等 级:新手上路
帖 子:34
专家分:0
注 册:2008-9-23
收藏
得分:0 
你这个是做的吗?
我只知道vb里面单击鼠标和选中按钮按回车都会响应Private Sub Command1_Click()这个事件
2008-10-17 10:22
xin99v
Rank: 1
等 级:新手上路
帖 子:16
专家分:0
注 册:2008-9-28
收藏
得分:0 
没错是VB .NET
其实 我想知道是因为很多小游戏。。。如飞机类的游戏,,,,在按钮上有的设置连击,,,想学学!!!!
希望有人能解决。。。。。谢!!
2008-10-17 10:45
xin99v
Rank: 1
等 级:新手上路
帖 子:16
专家分:0
注 册:2008-9-28
收藏
得分:0 
高手解答一下!
谢了!!!~~~~~~~~
2008-10-17 15:21
风吹过b
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:364
帖 子:4947
专家分:30084
注 册:2008-10-15
收藏
得分:0 
我们换个思路来想这个问题不?
1\增加一个timer控件,定义一个全局变量,这个变量为 integer 或long
2\在keydown事件中,如果取到的键,就把这个全局变量置为 对应的键值,然后启动timer开始计时.
3\每计一次时,就调用一次按键处理程序.
4\如果发生 keyup 事件,再把这个保存的按键置为0

相关测试代码如下:
新建一个工程,放一个 timer 控件,用下面的代码段.

Option Explicit
Dim keysave As Long
Dim keyjs As Long

Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
    keysave = KeyCode
    Call 按键处理
End Sub

Private Sub Form_KeyUp(KeyCode As Integer, Shift As Integer)
    keysave = 0
End Sub

Private Sub 按键处理
    keyjs = keyjs + 1
    Me.Cls
    Me.Print keysave
    Me.Print keyjs

End Sub

Private Sub Form_Load()
Timer1.Interval = 100
End Sub

Private Sub Timer1_Timer()
    If keysave > 0 Then
        Call 按键处理
    End If
End Sub

[[it] 本帖最后由 风吹过b 于 2008-10-17 16:56 编辑 [/it]]

授人于鱼,不如授人于渔
早已停用QQ了
2008-10-17 16:54
风吹过b
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:364
帖 子:4947
专家分:30084
注 册:2008-10-15
收藏
得分:0 
这是 VB6 的代码.

授人于鱼,不如授人于渔
早已停用QQ了
2008-10-17 16:54
multiple1902
Rank: 8Rank: 8
等 级:贵宾
威 望:42
帖 子:4881
专家分:671
注 册:2007-2-9
收藏
得分:0 
[bo][un]风吹过b[/un] 在 2008-10-17 16:54 的发言:[/bo]

这[bo]不[/bo]是 VB6 的代码.
2008-10-17 18:44
multiple1902
Rank: 8Rank: 8
等 级:贵宾
威 望:42
帖 子:4881
专家分:671
注 册:2007-2-9
收藏
得分:0 
首先,Enter与空格的不同就在于这个特性,换句话说,Enter就是干这个的。
如果你会玩API,你试试在探测到Enter按下的时候帮他把Enter松开。我没试过。
换个思路,你也可以控制两次运行这个Sub的时间间隔。小于指定间隔的不予处理。
2008-10-17 22:07
Joforn
Rank: 6Rank: 6
等 级:贵宾
威 望:23
帖 子:1242
专家分:122
注 册:2007-1-2
收藏
得分:0 
在Click事件激活时检测键盘Enter键是否处于按下状态,如果是,直接跳出。

VB QQ群:47715789
2008-10-18 09:50
Joforn
Rank: 6Rank: 6
等 级:贵宾
威 望:23
帖 子:1242
专家分:122
注 册:2007-1-2
收藏
得分:0 
当然,最精确的方式是,钩住按钮的键盘信息,把所有的13号键盘信息(Enter)改为32号(Space)信息,然后把事件处理放在KeyUp事件中,不用Click,这样就只能按一下Enter键或是空格键并弹起后才能激活事件。
收到的鲜花
  • multiple19022008-10-18 11:41 送鲜花  18朵   附言:好方法!

VB QQ群:47715789
2008-10-18 09:54
快速回复:怎样设置可以另enter键不连续
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.030729 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved