บางสิ่งเล็ก ๆ ที่ฉันทำเพื่อจุดประสงค์ของฉันหลังจากอ่านความคิดเห็นของ 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
;
แก้ไข:
TBH ฉันพยายามหาสิ่งที่มีประโยชน์สำหรับ windows ที่ไม่ได้ปรับขนาด แต่ไม่สามารถหาอะไรได้ (ไม่ได้บอกว่ามันเป็นไปไม่ได้จริง ๆ แล้วนี่เป็นสคริปต์ Autohotkey ตัวแรกของฉัน)
ฉันทำ tweaks ด้วยการเอา sleeps ออกโดยไม่จำเป็นใช้สไตล์ที่ 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