查看: 4043|回复: 17

[已经解决] 求屏蔽 Alt+Enter 按键全屏 的办法

[复制链接]

永无止境的旅程<

梦石
0
星屑
537
在线时间
1554 小时
注册时间
2012-6-19
回帖
1162

开拓者贵宾

发表于 2015-7-29 01:06:17 | 显示全部楼层 |阅读模式

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

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

×
搜过了,因为帖子都已经失效删除找不到。
而且又因为这方面技术泰国困难,所以得找人帮忙了。
[url=https://rpg.blue/thread-389697-1-1.html]https://rpg.blue/https://rpg.blue/data/attachment/forum/201602/26/220128cfbxxs47xth4xkz4.jpg[/url]
&lt;font size=&quot;5&quot;&gt;[color=Green][url=https://rpg.blue/forum.php?mod=viewthread&amp;tid=396208&amp;extra=page%3D1][color=DeepSkyBlue]全新配套ACT系统,每周末一大更新,尽请期待。[/color][/url][/color]

送快递的水表员

梦石
10
星屑
5259
在线时间
3304 小时
注册时间
2012-6-27
回帖
7028

开拓者贵宾

发表于 2015-7-29 08:38:11 | 显示全部楼层
屏蔽响应即可。

脚本:
  1. $keybd = Win32API.new 'user32.dll', 'keybd_event', ['i', 'i', 'l', 'l'], 'v'
  2. $keybd.call 13, 0, 2, 0
  3. $keybd.call 0xA4, 0, 2, 0
复制代码
使用方法:
QQ截图20150729083938.jpg

游戏开始时便立刻打开该公共事件的开关

点评

實測沒有效果呢  发表于 2018-11-12 23:50
回复

使用道具 举报

永无止境的旅程<

梦石
0
星屑
537
在线时间
1554 小时
注册时间
2012-6-19
回帖
1162

开拓者贵宾

 楼主| 发表于 2015-7-29 18:09:01 | 显示全部楼层
Password 发表于 2015-7-29 08:38
屏蔽响应即可。

脚本:使用方法:

不行,因为我已经舍弃了默认脚本,所以这些功能已经无效。但是这个代码丢到脚本里也无效

点评

但API可以用就可以吧,放在主处理的循环开始,另外只屏蔽alt就可以了,屏蔽enter怎么玩。。。  发表于 2015-7-30 13:42
因为我没有公共事件 和 地图事件功能  发表于 2015-7-29 23:00
这个是通过不断发送键盘指令"松开那两个键"实现的……呃……具体和默认脚本有什么关系没想过,这个也会受默认脚本影响……?  发表于 2015-7-29 22:39
我的RM里面的默认可视化功能都是不用的  发表于 2015-7-29 18:09
[url=https://rpg.blue/thread-389697-1-1.html]https://rpg.blue/https://rpg.blue/data/attachment/forum/201602/26/220128cfbxxs47xth4xkz4.jpg[/url]
&lt;font size=&quot;5&quot;&gt;[color=Green][url=https://rpg.blue/forum.php?mod=viewthread&amp;tid=396208&amp;extra=page%3D1][color=DeepSkyBlue]全新配套ACT系统,每周末一大更新,尽请期待。[/color][/url][/color]
回复

使用道具 举报

头像被屏蔽
梦石
0
星屑
88
在线时间
631 小时
注册时间
2014-8-4
回帖
3243
发表于 2015-7-29 22:25:31 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
签名被屏蔽
回复

使用道具 举报

送快递的水表员

梦石
10
星屑
5259
在线时间
3304 小时
注册时间
2012-6-27
回帖
7028

开拓者贵宾

发表于 2015-7-30 14:38:38 | 显示全部楼层
丿梁丶小柒 发表于 2015-7-29 18:09
不行,因为我已经舍弃了默认脚本,所以这些功能已经无效。但是这个代码丢到脚本里也无效 ...


把那段脚本放到 Scene_Base 下的 def update 中行吗?

点评

会不会和全键盘起冲突了...  发表于 2015-7-30 19:58
呃……那只能坐等大神了  发表于 2015-7-30 19:32
没有效果  发表于 2015-7-30 19:25
回复

使用道具 举报

梦石
0
星屑
1944
在线时间
404 小时
注册时间
2015-8-30
回帖
322
发表于 2017-2-1 20:16:42 | 显示全部楼层
本帖最后由 有丘直方 于 2017-2-1 20:20 编辑
  1. class << Input
  2.   @keybd = Win32API.new('user32.dll', 'keybd_event', 'iill', 'v')
  3.   alias old_update update
  4.   def update
  5.     old_update
  6.     @keybd.call(13, 0, 2, 0)
  7.     @keybd.call(0xa4, 0, 2, 0)
  8.   end
  9. end
复制代码
未测试。

点评

回帖能不能看看时间  发表于 2017-2-5 10:43
如果你并不是在每一帧都Input.update,可以换成Graphics  发表于 2017-2-1 20:18

评分

参与人数 1星屑 +260 收起 理由
丿梁丶小柒 + 260 我很赞同

查看全部评分

小仙女一枚~
回复

使用道具 举报

梦石
0
星屑
125
在线时间
171 小时
注册时间
2014-4-14
回帖
135
发表于 2017-2-5 07:13:01 | 显示全部楼层
本帖最后由 2357691704 于 2017-2-5 07:15 编辑

给。附件解压在工程目录下
说明:用了全键盘检测后,再禁止键盘ALT、左ALT、右ALT。这样,不管你怎么按ALT+ENTER来全屏都无济于事。
[fold=脚本][pre lang="ruby"]=begin
  屏蔽按键

  作者:秀秀

  使用方法: 1. Maskkey.mask (屏蔽按键)
   
            2. Maskkey.maskAllKey (屏蔽所有按键)
            
            3. Maskkey.stopMask (恢复按键)
=end  

module Maskkey
  #==========================================================================
  # 以下是全键盘按键列表
  #--------------------------------------------------------------------------
  $Rmouse_BUTTON_L = 0x01        # left mouse button
  $Rmouse_BUTTON_R = 0x02        # right mouse button
  $Rmouse_BUTTON_M = 0x04        # middle mouse button
  $Rmouse_BUTTON_4 = 0x05        # 4th mouse button
  $Rmouse_BUTTON_5 = 0x06        # 5th mouse button
  #--------------------------------------------------------------------------
  $R_Key_BACK      = 0x08        # BACKSPACE key
  $R_Key_TAB       = 0x09        # TAB key
  $R_Key_RETURN    = 0x0D        # ENTER key
  $R_Key_SHIFT     = 0x10        # SHIFT key
  $R_Key_CTLR      = 0x11        # CTLR key
  $R_Key_ALT       = 0x12        # ALT key
  $R_Key_PAUSE     = 0x13        # PAUSE key
  $R_Key_CAPITAL   = 0x14        # CAPS LOCK key
  $R_Key_ESCAPE    = 0x1B        # ESC key
  $R_Key_SPACE     = 0x20        # SPACEBAR
  $R_Key_PRIOR     = 0x21        # PAGE UP key
  $R_Key_NEXT      = 0x22        # PAGE DOWN key
  $R_Key_END       = 0x23        # END key
  $R_Key_HOME      = 0x24        # HOME key
  $R_Key_LEFT      = 0x25        # LEFT ARROW key
  $R_Key_UP        = 0x26        # UP ARROW key
  $R_Key_RIGHT     = 0x27        # RIGHT ARROW key
  $R_Key_DOWN      = 0x28        # DOWN ARROW key
  $R_Key_SELECT    = 0x29        # SELECT key
  $R_Key_PRINT     = 0x2A        # PRINT key
  $R_Key_SNAPSHOT  = 0x2C        # PRINT SCREEN key
  $R_Key_INSERT    = 0x2D        # INS key
  $R_Key_DELETE    = 0x2E        # DEL key
  #--------------------------------------------------------------------------
  $R_Key_0         = 0x30        # 0 key
  $R_Key_1         = 0x31        # 1 key
  $R_Key_2         = 0x32        # 2 key
  $R_Key_3         = 0x33        # 3 key
  $R_Key_4         = 0x34        # 4 key
  $R_Key_5         = 0x35        # 5 key
  $R_Key_6         = 0x36        # 6 key
  $R_Key_7         = 0x37        # 7 key
  $R_Key_8         = 0x38        # 8 key
  $R_Key_9         = 0x39        # 9 key
  #--------------------------------------------------------------------------
  $R_Key_A         = 0x41        # A key
  $R_Key_B         = 0x42        # B key
  $R_Key_C         = 0x43        # C key
  $R_Key_D         = 0x44        # D key
  $R_Key_E         = 0x45        # E key
  $R_Key_F         = 0x46        # F key
  $R_Key_G         = 0x47        # G key
  $R_Key_H         = 0x48        # H key
  $R_Key_I         = 0x49        # I key
  $R_Key_J         = 0x4A        # J key
  $R_Key_K         = 0x4B        # K key
  $R_Key_L         = 0x4C        # L key
  $R_Key_M         = 0x4D        # M key
  $R_Key_N         = 0x4E        # N key
  $R_Key_O         = 0x4F        # O key
  $R_Key_P         = 0x50        # P key
  $R_Key_Q         = 0x51        # Q key
  $R_Key_R         = 0x52        # R key
  $R_Key_S         = 0x53        # S key
  $R_Key_T         = 0x54        # T key
  $R_Key_U         = 0x55        # U key
  $R_Key_V         = 0x56        # V key
  $R_Key_W         = 0x57        # W key
  $R_Key_X         = 0x58        # X key
  $R_Key_Y         = 0x59        # Y key
  $R_Key_Z         = 0x5A        # Z key
  #--------------------------------------------------------------------------
  $R_Key_LWIN      = 0x5B        # Left Windows key (Microsoft Natural keyboard)
  $R_Key_RWIN      = 0x5C        # Right Windows key (Natural keyboard)
  $R_Key_APPS      = 0x5D        # Applications key (Natural keyboard)
  #--------------------------------------------------------------------------
  $R_Key_NUMPAD0   = 0x60        # Numeric keypad 0 key
  $R_Key_NUMPAD1   = 0x61        # Numeric keypad 1 key
  $R_Key_NUMPAD2   = 0x62        # Numeric keypad 2 key
  $R_Key_NUMPAD3   = 0x63        # Numeric keypad 3 key
  $R_Key_NUMPAD4   = 0x64        # Numeric keypad 4 key
  $R_Key_NUMPAD5   = 0x65        # Numeric keypad 5 key
  $R_Key_NUMPAD6   = 0x66        # Numeric keypad 6 key
  $R_Key_NUMPAD7   = 0x67        # Numeric keypad 7 key
  $R_Key_NUMPAD8   = 0x68        # Numeric keypad 8 key
  $R_Key_NUMPAD9  = 0x69        # Numeric keypad 9 key
  $R_Key_MULTIPLY  = 0x6A        # Multiply key (*)
  $R_Key_ADD       = 0x6B        # Add key (+)
  $R_Key_SEPARATOR = 0x6C        # Separator key
  $R_Key_SUBTRACT  = 0x6D        # Subtract key (-)
  $R_Key_DECIMAL   = 0x6E        # Decimal key
  $R_Key_DIVIDE    = 0x6F        # Divide key (/)
  #--------------------------------------------------------------------------
  $R_Key_F1        = 0x70        # F1 key
  $R_Key_F2        = 0x71        # F2 key
  $R_Key_F3        = 0x72        # F3 key
  $R_Key_F4        = 0x73        # F4 key
  $R_Key_F5        = 0x74        # F5 key
  $R_Key_F6        = 0x75        # F6 key
  $R_Key_F7        = 0x76        # F7 key
  $R_Key_F8        = 0x77        # F8 key
  $R_Key_F9        = 0x78        # F9 key
  $R_Key_F10       = 0x79        # F10 key
  $R_Key_F11       = 0x7A        # F11 key
  $R_Key_F12       = 0x7B        # F12 key
  #--------------------------------------------------------------------------
  $R_Key_NUMLOCK   = 0x90        # NUM LOCK key
  $R_Key_SCROLL    = 0x91        # SCROLL LOCK key
  #--------------------------------------------------------------------------
  $R_Key_LSHIFT    = 0xA0        # Left SHIFT key
  $R_Key_RSHIFT    = 0xA1        # Right SHIFT key
  $R_Key_LCONTROL  = 0xA2        # Left CONTROL key
  $R_Key_RCONTROL  = 0xA3        # Right CONTROL key
  $R_Key_L_ALT    = 0xA4        # Left ALT key
  $R_Key_R_ALT    = 0xA5        # Right ALT key
  #--------------------------------------------------------------------------
  $R_Key_SEP      = 0xBC        # , key
  $R_Key_DASH      = 0xBD        # - key
  $R_Key_DOTT      = 0xBE        # . Key
  
  #--------------------------
  # 屏蔽按键
  #--------------------------
  KeyCode = [$R_Key_ALT,$R_Key_L_ALT,$R_Key_R_ALT]
  
  Mask = Win32API.new("MaskKey.dll","StartMaskKey","pii","i")
  StopMask = Win32API.new("MaskKey.dll","StopMaskKey","v","v")
  
  def self.mask
    Mask.call(KeyCode.pack("L*"),12,0)
  end  
  
end
Maskkey.mask
[/pre][/fold]

MaskKey.zip

9.76 KB, 下载次数: 74

dll

点评

實測ALT+ENTER全螢幕依然順暢無阻無壓力.........  发表于 2018-11-12 23:47

评分

参与人数 1星屑 +260 收起 理由
丿梁丶小柒 + 260 我很赞同

查看全部评分

Vanyogin
回复

使用道具 举报

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

本版积分规则

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部