ฉันเพิ่งสร้างสคริปต์สำหรับautohotkeyที่ทำสิ่งนี้ใน Windows 10 ได้ถึง 10 เดสก์ท็อป
วิธีทำให้มันทำงาน:
ดาวน์โหลดและติดตั้งAutoHotKey คัดลอกและวางรหัสตะโกนลงใน Notepad และบันทึกด้วยนามสกุลไฟล์. ahk
ฉันขอแนะนำให้สร้างทางลัดของไฟล์นี้ในโฟลเดอร์เริ่มต้นของคุณเพื่อให้ทำงานเมื่อ Windows เริ่มทำงาน
ค่าเริ่มต้น HOTKEYS:
สลับเดสก์ท็อป: ชนะ + หมายเลขเดสก์ท็อป (0 = หมายเลขเดสก์ท็อป 10)
เดสก์ท็อปใหม่: CTRL + WIN + D
ปิดเดสก์ท็อป: CTRL + WIN + F4
แสดงสถานะเดสก์ท็อป: WIN + '
สิ่งสำคัญ:
เพื่อให้มันใช้งานได้คุณจะต้องใช้ปุ่มลัดเท่านั้นในการเปิดปิดและเปลี่ยนเดสก์ท็อปเนื่องจากสคริปต์จะรับฟังปุ่มลัดเหล่านี้เพื่อทราบจำนวนเดสก์ท็อปปัจจุบันและทั้งหมด
หากคุณสร้างปิดหรือเปลี่ยนเดสก์ท็อปผ่านเมนู WIN + TAB ด้วยเมาส์สคริปต์จะหยุดทำงาน เพื่อให้มันทำงานได้อีกครั้งคุณจะต้องแก้ไขสองบรรทัดแรกเพื่อแสดงสถานะปัจจุบันของเดสก์ท็อปของคุณ (desktopcount / currentdesktop)
นี่ไม่ได้หมายความว่าคุณไม่สามารถใช้หน้าจอ WIN + TAB เป็นภาพรวมของเดสก์ท็อปปัจจุบันของคุณ คุณสามารถใช้ปุ่มนี้ร่วมกับปุ่มลัดเพื่อจัดระเบียบเดสก์ท็อปของคุณ ใช่ปุ่มลัดยังคงทำงานเมื่อโปรแกรมดูงาน Windows เปิดอยู่! (ชนะ + TAB) อย่าใช้เมาส์ !!!
และรอให้สคริปต์โหลดหลังจากเริ่มทำงาน Windows ก่อนที่จะสร้างเดสก์ท็อปใหม่ไม่เช่นนั้นจะไม่ทำงาน อาจใช้เวลาสักครู่ขึ้นอยู่กับจำนวนโปรแกรมเริ่มต้นที่คุณมี
ตกลงฉันได้เพิ่มอีกหนึ่งสิ่งเพื่อให้การซิงค์สคริปต์กับสถานะเดสก์ท็อปของคุณง่ายขึ้น ขณะนี้มีฮอตคีย์ที่จะแสดงสถานะสคริปต์ที่เชื่อว่าเดสก์ท็อปอยู่ในสิ่งที่คุณต้องทำคือปรับเดสก์ท็อปของคุณด้วยเมาส์เพื่อให้พอดีกับสคริปต์และจะซิงค์ทั้งหมดอีกครั้ง! สำหรับฉันด้วยแป้นพิมพ์ภาษาสวิสมันได้ผลเป็นอย่างดีว่า '? คีย์ถัดจาก 0 และทำให้เหมาะสมกับ? บนมัน แต่บนแป้นพิมพ์อื่น ๆ คุณอาจต้องการเปลี่ยนสิ่งนี้ซึ่งสามารถทำได้อย่างง่ายดายโดยการเปลี่ยนบรรทัดทันทีหลังจากปุ่มลัดสำหรับ 0/10 (เริ่มต้นด้วย # ') เป็นสิ่งที่คุณต้องการ
ที่จริงแล้วฉันเพิ่งรู้ .... ตราบใดที่การนับเดสก์ท็อปถูกต้องกว่าการสร้างเดสก์ท็อปใหม่จะซิงค์ค่าเดสก์ท็อปปัจจุบันอีกครั้งโดยอัตโนมัติ
(บรรทัดที่ขึ้นต้นด้วยคือความคิดเห็นและไม่มีผลกับสคริปต์)
รหัส:
#NoTrayIcon
;If the script stops working:
;Change the following values to reflect your current desktop state and reload the script.
;Remember to change them back to 1 after reloading the script if you have it set to start with Windows
desktopcount := 1
currentdesktop := 1
;You can change the hotkeys for creating, closing, and switching desktops bellow.
;The current hotkeys are CTRL+WIN+D for new desktop, CTRL+WIN+F4 to close desktop
;and WIN+NUMBER for switching desktops.
;For example, to change the hotkey for new desktop replace ^#D bellow with the desired hotkey.
;Refer to the autohotkey documentation for a full list of symbols refering to modifier keys,
;as you can see ^ is CTRL and # is WIN key.
;If you wanted to change the switch desktop from WIN key to CTRL for example you would have
;to replace the # before each number to a ^
^#D::NewDesktop()
^#F4::CloseDesktop()
#1::SwitchDesktop(1)
#2::SwitchDesktop(2)
#3::SwitchDesktop(3)
#4::SwitchDesktop(4)
#5::SwitchDesktop(5)
#6::SwitchDesktop(6)
#7::SwitchDesktop(7)
#8::SwitchDesktop(8)
#9::SwitchDesktop(9)
#0::SwitchDesktop(10)
#'::MsgBox Desktop Count = %desktopcount%`nCurrent Desktop = %currentdesktop%
;Do not change anything after this line, unless you know what you are doing ;)
;-----------------------------------------------------------------------------------------------
SwitchDesktop(desktop)
{
global desktopcount
global currentdesktop
desktopdiff := desktop - currentdesktop
if (desktop > desktopcount)
{
return
}
if (desktopdiff < 0)
{
desktopdiff *= -1
Loop %desktopdiff%
{
Send ^#{Left}
}
}
else if (desktopdiff > 0)
{
Loop %desktopdiff%
{
Send ^#{Right}
}
}
currentdesktop := desktop
}
NewDesktop()
{
global desktopcount
global currentdesktop
if (desktopcount > 9)
{
return
}
desktopcount ++
currentdesktop := desktopcount
Send ^#d
}
CloseDesktop()
{
global desktopcount
global currentdesktop
desktopcount --
if (currentdesktop != 1)
{
currentdesktop --
}
Send ^#{f4}
}