赞 | 0 |
VIP | 0 |
好人卡 | 0 |
积分 | 1 |
经验 | 1808 |
最后登录 | 2022-6-14 |
在线时间 | 403 小时 |
Lv1.梦旅人
- 梦石
- 0
- 星屑
- 60
- 在线时间
- 403 小时
- 注册时间
- 2012-8-12
- 帖子
- 1173
|
# (WinUser.h 中的一些宏)
# GWL_STYLE = -16
# WS_CAPTION = 0x00C00000L
# SM_CXSCREEN = 0
# SM_CYSCREEN = 1
# SWP_FRAMECHANGED = 0x0020
# 防止 F12 后再次执行
if $START_NOCAPTION == nil
$START_NOCAPTION = 1
getPrivateProfileString = Win32API.new("kernel32", "GetPrivateProfileString", ['P', 'P', 'P', 'P', 'L', 'P'], 'L')
findWindow = Win32API.new("user32", "FindWindow", ['P', 'P'], 'L')
getWindowLong = Win32API.new("user32", "GetWindowLong", ['L', 'I'], 'L')
setWindowLong = Win32API.new("user32", "SetWindowLong", ['L', 'I', 'L'], 'L')
getSystemMetrics = Win32API.new("user32", "GetSystemMetrics", ['I'], 'I')
setWindowPos = Win32API.new("user32", "SetWindowPos",['L', 'L', 'I', 'I', 'I', 'I', 'I'], 'L')
# 分配字符串缓冲区
title = " " * 128
# 通过读取 Game.ini 获取窗口标题
getPrivateProfileString.call("Game", "Title", "", title, 128, "./Game.ini")
# 通过窗口类名和标题获取窗口句柄
hWnd = findWindow.call('RGSS Player', title)
# 获取窗口样式
style = getWindowLong.call(hWnd, -16)
# 去掉 WS_CAPTION 样式
style &= ~0x00C00000
# 应用新样式
setWindowLong.call(hWnd, -16, style)
# 获取屏幕尺寸
scr_width = getSystemMetrics.call(0)
scr_height = getSystemMetrics.call(1)
# 更新窗口框架并居中
setWindowPos.call(hWnd, 0, (scr_width - 544) / 2, (scr_height - 416) / 2, 544, 416, 0x0020)
end |
|