赞 | 0 |
VIP | 1 |
好人卡 | 2 |
积分 | 2 |
经验 | 16258 |
最后登录 | 2019-2-22 |
在线时间 | 434 小时 |
Lv1.梦旅人
- 梦石
- 0
- 星屑
- 167
- 在线时间
- 434 小时
- 注册时间
- 2009-1-1
- 帖子
- 643
|
4楼
楼主 |
发表于 2014-12-10 17:43:34
|
只看该作者
说明一下,单单用SetWindowText来改是没有用的,就像主楼说的那样,我用API修改,但每次它都会变回来,确切说是Graphics.update一下又会变回来的- module Kernel
- GetWindowThreadProcessId = Win32API.new("user32", "GetWindowThreadProcessId", "LP", "L")
- GetWindow = Win32API.new("user32", "GetWindow", "LL", "L")
- GetClassName = Win32API.new("user32", "GetClassName", "LPL", "L")
- GetCurrentThreadId = Win32API.new("kernel32", "GetCurrentThreadId", "V", "L")
- GetForegroundWindow = Win32API.new("user32", "GetForegroundWindow", "V", "L")
- def get_hWnd
- threadID = GetCurrentThreadId.call
- hWnd = GetWindow.call(GetForegroundWindow.call, 0)
- while hWnd != 0
- if threadID == GetWindowThreadProcessId.call(hWnd, 0)
- className = " " * 11
- GetClassName.call(hWnd, className, 12)
- break if className == "RGSS Player"
- end
- hWnd = GetWindow.call(hWnd, 2)
- end
- return hWnd
- end
- end
- SetWindowText = Win32API.new 'user32', 'SetWindowText', 'lp', 'l'
- SetWindowText.call get_hWnd, "Hello World"
- msgbox 1 #这时是新标题
- Graphics.update
- msgbox 2 #Graphics.update以后又变回来
复制代码 这种情况要怎么处理? |
|