ControlClick ของ autohotkey & การตั้งค่าเริ่มต้นไม่ทำงาน


0

ฉันกำลังติดตามAutoHotkeyScript ที่ยอดเยี่ยมนี้และมีปัญหาในการรับSet Defaultปุ่มเพื่อคลิก

off topic: หากคุณต้องการทำซ้ำฉันต้องเปลี่ยนคำสั่งสองสามคำเพื่อตรวจหาหน้าต่างเสียงให้ทำงานดังนั้นนี่คือที่ที่ฉันอยู่:

   Run mmsys.cpl
   IfWinNotActive,  Sound, , WinActivate,  Sound, 
   WinWait,Sound ; Change "Sound" to the name of the window in your local language
   ControlSend,SysListView321,{Down 1} ; This number selects the matching audio device in the list, change it accordingly
   Sleep, 100
   ControlClick, &Set Default; Change "&Set Default" to the name of the button in your local language
   Sleep, 100
   ;ControlClick,OK

ตอนนี้the AHK logแสดงสิ่งนี้เป็นการดำเนินการ:

109: {
110: toggle := !toggle
112: if toggle  
114: Run,mmsys.cpl
115: IfWinNotActive,Sound,l
115: WinActivate,Sound (0.03)
116: WinWait,Sound (0.31)
119: ControlSend,SysListView321,{Down 1} (0.01)
120: Sleep,100 (0.11)
121: ControlClick,&Set Default; Change "&Set Default" to the name of the button in your local language
122: Sleep,100 (0.11)
124: }
125: if !toggle  
138: }
139: Return (6.74)

แต่&Set Defaultไม่ได้ถูกคลิก ฉันได้ตรวจสอบแล้วว่าชื่อปุ่มนั้นแท้จริง&Set Defaultแล้ว ฉันเดาว่าฉันสามารถใช้ ClassNN ได้Button2แต่ฉันอยากจะรู้ว่า - ทำไม - นี่มันใช้งานไม่ได้ไม่ใช่แค่แฮกผ่านทางของฉัน

หรือฉันสามารถsend [alt down]S[alt up]ตั้งค่าให้เป็นค่าเริ่มต้นได้ แต่นั่นคือการแฮ็กและทำไม ControlClick ธรรมดาไม่ทำงาน

คำตอบ:


0

ดูเหมือนว่ามันเป็นปัญหาไวยากรณ์ที่เรียบง่าย:

  1. คุณไม่จำเป็นต้องใช้เครื่องหมายอัฒภาคในตอนท้ายของทุกบรรทัด
  2. คุณจะทำต้องมีตัวคั่นช่องว่างระหว่างคำสั่งและอัฒภาค

ตัวอย่างเช่นWinWait, Sound;เป็นปัญหา แต่WinWait, Sound ;ถูกต้อง


0

สำหรับ ControlClick: ในที่สุดฉันก็พบโซลูชันของตัวเองหลังจากอ่านเอกสารอย่างละเอียดมากขึ้น:

https://autohotkey.com/docs/commands/ControlClick.htm#Reliability

คุณสามารถระบุ NA เป็นพารามิเตอร์ที่หกเพื่อรอปุ่มเมาส์เพื่อยก ผมพบว่าเมื่อยิงControl, Check, ,Button1ก่อนที่จะControlClickคลิกไม่ได้ทำงาน แต่เพิ่มNAไปยังจุดสิ้นสุดอย่างใดอย่างน่าอัศจรรย์คงมัน ฉันคิดว่าการคลิกหนึ่งครั้งกำลังถูกจำลองขึ้นและยังไม่ได้ยกขึ้น

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