Windows 程序可以从窗口中删除标题栏、框架等吗?

Windows 程序可以从窗口中删除标题栏、框架等吗?

我喜欢在窗口模式下玩电脑游戏,而不是全屏模式。我不喜欢盯着标题栏、框架和其他 UI 垃圾。我也不喜欢在桌面上看到窗口周围的其他东西。有没有一个简单的 Windows 程序可以将来自其他应用程序的任意窗口的 UI 镶边剥离?如果能轻松地在窗口下方放置一个黑屏,隐藏桌面,那就更好了。

注意:我专门寻找处理小于桌面尺寸的窗口的方法。有多种“窗口最大化”选项可以使窗口与桌面尺寸完全相同,并且定位时所有 UI 装饰均不在屏幕上。(例如:ShiftWindow)。我试图从小于桌面尺寸的窗口中去除所有装饰。

答案1

这只是我在阅读 voodoomsr 的评论后为自己的目的制作的一个小东西。让它移到左上角并调整为我的全分辨率。恢复到之前的样子。不能同时用于多个应用程序。

谢谢 voodoomsr

;-Caption
LWIN & LButton::
SetTitleMatchMode, 2
WinGetPos, X, Y, Width, Height, A
WinSet, Style, -0xC00000, A
WinMove,A,,0,0,1920,1080
return
;

;+Caption
LWIN & RButton::
WinSet, Style, +0xC00000, A
WinMove,A,,%X%,%Y%,%Width%,%Height%
Sleep, 1000
Sleep, 1000
return
;

编辑:

老实说,我试图找到一些对无法调整大小的窗口有用的东西,但什么也没找到(并不是说不可能,这实际上是我的第一个 Autohotkey 脚本)。

好吧,无论如何我做了一些调整,例如删除不必要的睡眠,使用 Nelson 建议的样式并使其只使用一个按钮工作,这样双击不会覆盖已保存的变量。

#SingleInstance force

; Exclude the desktop
; Note: Also excludes "My Computer" browsing windows.
;       Better detection might be needed to differentiate the parent explorer "ahk_id" from child windows.
;       Also seems to disregard accidental Metro interface clicks (Win 8+)
#IfWinNotActive ahk_exe explorer.exe

; Set your resolution (minus decorations like start bars if you wish to leave those on-screen.
w = 1920
h = 1080
w_wasted = 6 ; width used by resize bars
h_wasted = 29 ; width used by caption frame and resize bars

; Window to fullscreen
LWIN & LButton::
  SetTitleMatchMode, 2
  WinGet Style, Style, A

  ; 0xC40000 = WS_BORDER (0x800000) + WS_DLGFRAME (0x400000) + WS_SIZEBOX aka WS_THICKFRAME (0x040000)
  if(Style & 0xC00000) { ; if has WS_CAPTION. Ignore sizebox value.
    WinGetPos, X, Y, Width, Height, A
    WinSet, Style, -0xC40000, A ; removes attributes, including sizebox...doesn't do a strict subtraction
    WinMove,A,,0,0,w,h
  } else {
    WinSet, Style, +0xC40000, A
    ; Note: will set WS_SIZEBOX even if not previously present
    if(Width > w - w_wasted) { 
      Width := %w%-%w_wasted%
    }
    if(Height > h - h_wasted) {
      Height := %h%-%h_wasted%
    }
    WinMove,A,,%X%,%Y%,%Width%,%Height%
  }
  WinSet Redraw
  Return

答案2

只需使用这个 autohotkey 脚本:

;-Caption
LWIN & LButton::
WinSet, Style, -0xC00000, A
return
;

;+Caption
LWIN & RButton::
WinSet, Style, +0xC00000, A
return
;

您可以从这里下载 autohotkeyhttp://www.autohotkey.com/download/. 以扩展名 .ahk 保存文件并像任何应用程序一样运行它。

用法:

删除标题栏 LWindowButton + 左键单击

恢复标题栏 LWindowButton + 右键单击

答案3

这里是一个可以删除任何窗口标题栏的程序。要做到这一点,您必须在 WinExplorer 树视图中选择游戏窗口,然后切换到“样式”选项卡并勾选 WS_DLGFRAME。

答案4

切掉由 Skrommel 编写的程序可能会满足您的要求。

切掉

相关内容