ใน Windows 7 ฉันจะปิดการใช้งานฟังก์ชั่นที่เปิดใช้งานแถบเมนูได้อย่างไรเมื่อAltกด?
มีค่ารีจิสตรีเพื่อแก้ไขพฤติกรรมนี้หรือไม่?
ใน Windows 7 ฉันจะปิดการใช้งานฟังก์ชั่นที่เปิดใช้งานแถบเมนูได้อย่างไรเมื่อAltกด?
มีค่ารีจิสตรีเพื่อแก้ไขพฤติกรรมนี้หรือไม่?
คำตอบ:
คำตอบคือไม่ พวกเขาจะทำอย่างนั้นได้อย่างไร? หากพวกเขาทำเช่นนั้นและมีคนปิดการใช้งานพวกเขาจะตัดคนออกจากรายการเมนูที่จำเป็นมาก มันจะเป็นฝันร้าย
สิ่งเดียวที่คุณทำได้คือใช้งานกับสิ่งนั้นหรือเปิดใช้งานเมนูอย่างถาวรโดยคลิกจัดระเบียบ> เค้าโครง> แถบเมนู
ฉันเคยใช้AutoHotkeyอยู่แล้วดังนั้นฉันจึงเพิ่มบรรทัดนี้ลงในสคริปต์และแก้ไขพฤติกรรมที่น่ารำคาญนี้ในแอปพลิเคชันเกือบทั้งหมด:
~LAlt Up:: return
มันไม่ทำงานใน IE แต่ฉันไม่ได้ใช้ IE อยู่ดี :)
BTW ฉันยังฆ่าป๊อปอัพเมนูเริ่มต้นที่น่ารำคาญผ่าน:
~LWin Up:: return
~RWin Up:: return
ฉันพบคำถามนี้เพราะฉันมีแป้นพิมพ์ใหม่และบางครั้งก็กดปุ่มโดยไม่ได้ตั้งใจALTเมื่อพิมพ์อีเมลใน Gmail โฟกัสหายไปและการกดแป้นใด ๆ ต่อไปนี้จะถูกส่งผ่านไปยังเบราว์เซอร์ของฉัน (ซึ่งอาจมีผลลัพธ์ที่น่ารำคาญมากในบางครั้ง)
ทางออกที่ดีที่สุดที่ฉันพบซึ่งมีการปรับปรุง แต่ไม่สมบูรณ์แบบอยู่กับโปรแกรมที่เรียกว่า keymapper KeyTweakซึ่งเท่าที่ผมเข้าใจการเปลี่ยนแปลงรีจิสทรี
ในโปรแกรมที่คุณแมปLeft AltไปRight AltและจะRight Alt Left Altสิ่งนี้ทำให้Altฟังก์ชั่นยังคงใช้งานได้ค่อนข้าง ( Ctrl- Alt- Delete) อย่างไรก็ตามAlt- Tabบางส่วนเสียหาย (อย่างน้อยใน Windows-7 ของฉัน) ช่วยให้คุณสามารถย้ายไปยังแอปพลิเคชั่นอื่นบางส่วนได้ แต่เมื่อคุณปล่อยAltปุ่ม "การเลือก" ของแอปพลิเคชั่นต่อไปจะไม่ถูกสร้างขึ้นมา (คุณสามารถทำได้ด้วยการคลิกเมาส์อย่างไรก็ตาม)
เป็นเรื่องที่แย่เกินไป Windows ไม่มีสิ่งที่จะป้องกันการสูญเสียการโฟกัสจากการกด Alt ที่ผิดพลาด ShiftและCtrlปุ่มไม่ได้มีผลว่าตัวอย่างเช่น
อันนี้น่าสนใจ ฉันไม่รู้จักโปรแกรมใด ๆ นอกจาก Autokey หรือเพียงแค่จบการเขียนโปรแกรม แต่ไม่มีการตั้งค่ารีจิสทรี ที่จะทำลายโปรแกรมตัน
ปุ่มลัดอัตโนมัตินี้ใช้งานได้สำหรับฉันใน Windows 10:
Alt::Return ;Disables the key alt when it's pressed alone
(คำตอบของ Zengabor ไม่ได้ผลสำหรับฉัน)
ความรุ่งโรจน์ทั้งหมดถึงRohwedder
เท่าที่พบที่ไหน @MS
HKEY_CURRENT_USER\Control Panel\Accessibility\Keyboard PreferenceOnและตั้งค่าเป็น 1ฉันค้นหาวิธีแก้ไขปัญหาเดียวกัน: แก้ไขวิธีที่ Windows ตอบสนองต่อ "Alt + Shift" (เปลี่ยนภาษาที่ป้อน) แต่คุณพิมพ์ผิดและกด Alt ตามด้วย Shift โดยไม่มีการทับซ้อนกัน ในกรณีดังกล่าว Windows จะตีความโดด ๆ ว่า "เลือกเมนู" การกดปุ่มเดียวจะไม่ทำอะไรเลยและตัวละครใด ๆ ที่คุณกดหลังจากนั้นเลือกและเข้าสู่เมนูสุ่มที่คุณไม่ต้องการเปิด
เมื่อใช้แอพแชทเช่น Skype และคุณเป็นผู้พูดภาษาต่างประเทศการเปลี่ยนด้วย Alt + Shift ค่อนข้างบ่อยและคุณสามารถทำสิ่งที่โง่ ๆ ได้อย่างเร่งรีบ
@ user3419297 ชี้ให้ฉันเห็นวิธีแก้ไขของเขาที่นี่ซึ่งฉันแก้ไขเพื่อให้ Alt + Shift เกิดขึ้นในทุกกรณี มันเป็นเพียง # ถ้ามี แต่สิ่งที่สำคัญมาก! ข้อความที่ตัดตอนมาที่เกี่ยวข้อง:
; Disable stand-alone Alt key press: make Alt purely a modifier key.
; The If statement is required to get Alt+Shift work as expected. If it's not
; there, only [Press Alt], [Press Shift], [Release Shift], [Release Alt] would
; trigger the input language change. The other, more common sequence would be
; [Press Alt], [Press Shift], [Release Alt], [Release Shift], but AutoHotKey
; would block it before it reaches Windows if the "#If" isn't there.
#If not GetKeyState("LShift", "P")
~LAlt::
KeyWait, LAlt
return
; Make Alt+Something still work:
~LAlt Up::
Send, {LAlt Up}
return
สคริปต์เต็มของฉันยังเปิดใช้งานคุณสมบัติ Linuxish สองประการ: Alt + F2 เปิด "คำสั่งเรียกใช้ด่วน" และกด Alt ขวาลดหน้าต่างที่ใช้งานอยู่ในปัจจุบัน:
;==============================================================================
; AutoHotKey script for "Linuxifying" Windows 8.
; Based on suggestions on SuperUser (http://superuser.com/questions/1147370)
;
; Written by: Veselin Georgiev
; Date : 2016-11-18
;==============================================================================
; Optional: Make Alt+F2 bring up the "quick launch command" Window.
; In this case, it simulates the Windows logo key press. On Windows 8, the
; cursor would be in the search bar, which nicely emulates launching a
; command.
!F2::
Sleep 200
Send {LWin}
return
; Disable stand-alone Alt key press: make Alt purely a modifier key.
; The If statement is required to get Alt+Shift work as expected. If it's not
; there, only [Press Alt], [Press Shift], [Release Shift], [Release Alt] would
; trigger the input language change. The other, more common sequence would be
; [Press Alt], [Press Shift], [Release Alt], [Release Shift], but AutoHotKey
; would block it before it reaches Windows if the "#If" isn't there.
#If not GetKeyState("LShift", "P")
~LAlt::
KeyWait, LAlt
return
; Make Alt+Something still work:
~LAlt Up::
Send, {LAlt Up}
return
; Optional: Make the right alt key minimize the currently visible window.
~RAlt Up::WinMinimize A
สิ่งนี้ทำงานในระบบของฉันด้วย Autohotkey:
~LAlt::
KeyWait, LAlt
return
~LAlt Up::
Send, {LAlt Up}
return
มันทำให้ LAlt ทำงานอย่างหมดจดในฐานะที่เป็นคีย์ตัวปรับโดยไม่ต้องเรียกการกระทำใด ๆ หากมันถูกกดทั้งหมดด้วยตัวเอง (เช่นการเปิดใช้งานแถบเมนูของหน้าต่างที่ใช้งานในปัจจุบัน)
แก้ไข:
ไม่มีโซลูชั่นที่ใช้ AHK ที่โพสต์ที่นี่ใช้ได้สำหรับฉัน อย่างไรก็ตามด้วยการเล่นซอบางฉันคิดว่าถ้าคุณจับคู่ ALT กับคีย์อื่น ๆ ก่อนที่มันจะถูกปล่อยออกมาก็จะไม่ทำหน้าที่เพื่อเน้นเมนู แทนที่จะเสียรหัสฟังก์ชั่นฉันใช้รหัสสแกนที่ไม่ได้กำหนดซึ่งไม่เคยใช้เพื่อวัตถุประสงค์อื่น
LAlt::
sendinput, {LAlt down}
sendinput, {SC0E8 down} ;this is the scan code of an unassigned key. As long as you nor the system never use it for anything else, it can be used in THIS way to cancel the menu acceleration.
;tooltip, Lalt is pressed
KeyWait, LAlt
; That line is important, so that ALT does not continuously fire as you are holding it down.
;tooltip, Lalt was released
return
LAlt up::
sendinput, {LAlt up}
sendinput, {SC0E8 up}
;;;Unlike my 2nd keyboard, this method does not use the scan code as a strict "wrapper."
;;tooltip,
return
RAlt::
sendinput, {RAlt down}
sendinput, {SC0E8 down}
;;tooltip, Ralt is pressed
KeyWait, RAlt
;;tooltip, Ralt was released
return
RAlt up::
sendinput, {RAlt up}
sendinput, {SC0E8 up}
;;tooltip,
return
คำอธิบายวิดีโอ:
https://www.youtube.com/watch?v=vRld4bVFrpU&lc=UgzMjkQd4rbmvRDqU9h4AaABAg
เชื่อมโยงไปยังสคริปต์เต็มรูปแบบ:
https://github.com/TaranVH/2nd-keyboard/blob/master/Taran% 20Windows%20Mods/Alt_menu_acceleration_DISABLER.ahk
เพิ่งโพสต์โซลูชันที่ฉันพบ มันฆ่าAltเมนูใด ๆ100%
Alt::
KeyWait, Alt
return
LAlt Up::
if (A_PriorKey = "Alt")
return
return
หากคุณต้องการเช่นกันคุณสามารถ จำกัด การแก้ปัญหานี้เป็นโปรแกรมเดียว:
#IfWinActive ahk_exe sublime_text.exe
Alt::
KeyWait, Alt
return
LAlt Up::
if (A_PriorKey = "Alt")
return
return
#IfWinActive