วิธีการปิดการใช้งาน / ระงับ Autohotkey โดยอัตโนมัติเมื่อบางโปรแกรมอยู่ในโฟกัส?


2

สคริปต์ของฉันมี #IfWinActive หลายบรรทัดแล้วและขณะนี้ฉันใช้ #IfWinNotActive บนฮอตคีย์ทั่วโลกของฉันเพื่อปิดการใช้งานเมื่อฉันมีหน้าต่างที่เปิด อย่างไรก็ตามนี่ไม่ใช่วิธีแก้ปัญหาที่ดีมากและตอนนี้ฉันมีโปรแกรมมากกว่าหนึ่งโปรแกรมที่ต้องการปิดใช้งานปุ่มลัดสำหรับ ขณะนี้ฉันหยุดและเลิกสคริปต์ของตัวเองด้วยตนเอง แต่สิ่งนี้ค่อนข้างน่าเบื่อ

ฉันสงสัยว่าจะมีวิธีหยุดสคริปต์โดยอัตโนมัติเมื่อโปรแกรมบางโปรแกรมทำงานหรือไม่หยุดทำงานเมื่อโปรแกรมหยุดโฟกัส

คำตอบ:


3

มีวิธีฉันทำสิ่งนี้โดยใช้เพียงครั้งเดียว #ถ้า คำสั่งที่จุดเริ่มต้นของสคริปต์ทั้งหมดของฉัน (เสริมโดยใช้ #include ):

#if (!WinActive("ahk_exe sublime_text.exe") && !WinActive("Tinychat"))

สิ่งนี้จะปิดใช้งานปุ่มลัดในสคริปต์ทั้งหมดของฉันหาก: ข้อความ Sublime (ดำเนินการจากไดเรกทอรีใด ๆ ) ใช้งานได้หรือ Tinychat ทำงานในเบราว์เซอร์ใด ๆ คุณสามารถเปลี่ยน / เพิ่มเงื่อนไขในบรรทัดนี้เพื่อเปลี่ยน / เพิ่มกระบวนการ / windows / แท็บที่คุณต้องการยกเว้น


0

หากสคริปต์ถูกระงับดังนั้นจะยกเลิกการหยุดเองได้อย่างไร ทางออกที่ดีที่สุดของคุณคือการวางสคริปต์หลักใน ด้าย และมีเธรดอื่นที่รับผิดชอบในการระงับและทำงานเธรดแรกต่อ


อ่าใช่คุณพูดถูก บางทีคำถามควรจะเกี่ยวกับวิธีปิดใช้งานปุ่มลัดมากกว่าหยุดชั่วคราว / เลิกชั่วคราว โซลูชันของคุณต้องการเธรดอื่น ๆ เพื่อรันอย่างต่อเนื่องเพื่อตรวจสอบหน้าต่างปัจจุบันที่ใช้งานอยู่ใช่ไหม หรือบางอย่างของการจัดเรียง?
Kevin Lau

ไม่จำเป็น. คุณสามารถออกแบบสคริปต์ของคุณเพื่อให้เธรดควบคุมสามารถสลับปุ่มลัดในเธรดหลักโดยใช้ Hotkey คำสั่ง .
Synetech
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.