设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 1945|回复: 2
打印 上一主题 下一主题

[已经解决] 求怎么捕捉键盘持续按压

[复制链接]

Lv3.寻梦者

梦石
0
星屑
1912
在线时间
1554 小时
注册时间
2013-4-13
帖子
917
跳转到指定楼层
1
发表于 2013-4-18 20:14:12 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
本帖最后由 沉滞的剑 于 2013-4-19 03:42 编辑

我让一个窗口每当进行光标移动的时候刷新一次,但是当按钮持续按压的时候,窗口不刷新,直到再按一次键盘才有反应。
我想到两种方式解决,但是我不知道怎么做
1、有没有可能让持续按压只实现一次光标移动?
2、有没有可能捕捉按压状态,让处于按压状态的窗口持续更新?

我猜和这段代码有关,但是没有具体思路
RUBY 代码复制
  1. def process_cursor_move
  2.     return unless cursor_movable?
  3.     last_index = @index
  4.     cursor_down (Input.trigger?(:DOWN))  if Input.repeat?(:DOWN)
  5.     cursor_up   (Input.trigger?(:UP))    if Input.repeat?(:UP)
  6.     cursor_right(Input.trigger?(:RIGHT)) if Input.repeat?(:RIGHT)
  7.     cursor_left (Input.trigger?(:LEFT))  if Input.repeat?(:LEFT)
  8.     cursor_pagedown   if !handle?(:pagedown) && Input.trigger?(:R)
  9.     cursor_pageup     if !handle?(:pageup)   && Input.trigger?(:L)
  10.     Sound.play_cursor if @index != last_index
  11.   end

Lv2.观梦者 (暗夜天使)

梦石
0
星屑
266
在线时间
2355 小时
注册时间
2009-3-13
帖子
2309

贵宾

2
发表于 2013-4-18 21:20:17 | 只看该作者
press?(key) 按键被按下返回true
trigger?(key) 按键 未被按下转变为按下 返回true
repeat?(key) 如果按键被按下,每隔几帧返回一次true

1、用trigger?(k)
2、用press?(k),另外,处于按压状态的窗口是指?

具体Symbol对应的Key参考F1帮助档吧。

评分

参与人数 1梦石 +1 收起 理由
Mic_洛洛 + 1 认可答案

查看全部评分

回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
1912
在线时间
1554 小时
注册时间
2013-4-13
帖子
917
3
 楼主| 发表于 2013-4-19 03:42:23 | 只看该作者
Sion 发表于 2013-4-18 21:20
press?(key) 按键被按下返回true
trigger?(key) 按键 未被按下转变为按下 返回true
repeat?(key) 如果按键 ...

谢了,用repeat?解决了,感谢大神。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-11-5 13:49

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表