Jaka jest funkcja klawisza Alt Gr?

28

Czytałem gdzieś, że Alt Grklucz znaleziony w niektórych układach zastępuje Ctrl+ Alt.

Jednak do czego można użyć tej kombinacji? Czy istnieją udokumentowane skróty przy użyciu Ctrl+ Alt?

Sparx
źródło
3
Ctrl + Alt + Delete
Joe Taylor

Odpowiedzi:

27

IBM nazwał ten klucz „grafiką alternatywną” i nie zastępuje on CTRL+ ALT, chociaż CTRL+ ALTzostał zaimplementowany jako zamiennik dla ALT GRsystemu Windows. Jest to modyfikator klucza (taki jak CTRL lub SHIFT), który umożliwia wprowadzanie danych innych niż normalnie oczekiwany od klucza.

W zależności od konfiguracji klawiatury i położenia można go używać do tworzenia znaków ze znakami diakrytycznymi, gdy są używane w połączeniu z klawiszami alfabetu (najczęściej samogłosek) oraz trzecim symbolem nadrukowanym na niektórych klawiszach, na przykład € ( ALT GR+ 4) lub ¦ ( ALT GR+ `), które pojawiają się na mojej brytyjskiej klawiaturze. Klawiatury kontynentalne w Europie mają na ogół znacznie więcej klawiszy z dodatkowymi symbolami, które odpowiadają literom różnego rodzaju znaków diakrytycznych używanych w tych językach.

Aby uzyskać więcej informacji, zobacz klawisz AltGr .

James
źródło
Zawsze myślałem, że to skrót od Alt Green, ponieważ pamiętam, że klawisz został wydrukowany zielonymi literami na klawiaturze IBM PC / AT, ale po prostu mówiąc Alt. Dziwne, że artykuł w Wikipedii nawet o tym nie wspomina.
paradroid
1
Przez długi czas myślałem, że to znaczy „Alt German” ...
Jürgen A. Erhard
@ JürgenA.Erhard: Też tak myślałem.
Alex Essilfie,
3
Fajne wskazanie, że Alt Grjest zaimplementowane jako Ctrl+, Altale Ctrl+ Altnie odwzorowuje Alt Gr.
Alex Essilfie
W Indiach, w niektórych wyznaczonych klawiaturach, klawisz Alt Gr + 4 daje symbol waluty indyjskiej (₹)
Code Poet
9

W przypadku niektórych klawiatur umożliwia kilka alternatywnych kombinacji. W niektórych klawiaturach dopuszcza symbol centa lub symbol euro - Wikipedia ma dość obszerną listę kombinacji przy użyciu Alt Gr.

Jednak używając mapy klawiszy US / Windows, w większości przypadków nic nie robi.

Journeyman Geek
źródło
Nawet niektóre amerykańskie układy mają gdzieś na nich <€> (w moim przypadku <5>).
Ignacio Vazquez-Abrams,
moja to brytyjska klawiatura ustawiona na amerykańską; str. ma symbol euro na 4, jeśli był na brytyjskich zestawach kluczy
Journeyman Geek
4

Przydatny także dla osób potrzebujących ułatwień dostępu, które muszą wykonać kombinację klawiszy Ctrl + alt + del. Spróbuj tego jedną ręką.

Premia
źródło
Wątpię czy to działa?
Arjan,
@Arjan To nie działa.
AndrejaKo,
1
Działa na każdej klawiaturze, z której korzystałem. Może jest to mapa brytyjska.
Bonus
1
@Arjan Może niektóre klawiatury produkują różne skancode dla AltGr? Czy to możliwe, że niektóre klawiatury AltGr są skonfigurowane tak, aby zachowywać się jak ctrl + alt?
AndrejaKo,
2
Sekwencja C + A + D jest obsługiwana na znacznie niższym poziomie niż konwersja AltGrdo Ctrl+ Alt(przynajmniej w Windows i Linux), więc nie będą działać dokładnie tak samo. (Z wyjątkiem być może klawiatury wysyłającej Ctrl+ Altskancody.)
grawity
4

Alt gr jest niezbędny w niektórych językach, takich jak polski:

Alt Gr+ a= ą

Alt Gr+ s= ś

Alt Gr+ shift+ n= Ń

Antyradek
źródło
Taki układ klawiatury może prowadzić do interesujących błędów i problemów. Czytaj Ciekawy przypadek zniknięcia Polski S .
Kamil Maciorowski
1

Jestem prawie pewien, że jest tak zaimplementowany.

Możesz przetestować kod vkCode z KBDLLHOOKSTRUCT, aby zobaczyć, co otrzymujesz.

Mapowana lista wyliczeń stąd , tutaj i www.pinvoke.net/default.aspx/Constants/WM.html

Powinno to być równoważne z tym:

using System.Windows.Forms;

isAltGr ? (Keys) (1 << 19) : Keys.None

private static Keys BuildKeyData(Keys virtualKeyCode) => virtualKeyCode | (IsDownControl ? Keys.Control : Keys.None) | (IsDownShift ? Keys.Shift : Keys.None) | (IsDownAlt ? Keys.Alt : Keys.None) | (IsAltGr ? (Keys) (1 << 19) : Keys.None);
private static bool IsDownControl => IsKeyPressed((ushort)VirtualKeys.LeftControl) || IsKeyPressed((ushort)VirtualKeys.RightControl);
private static bool IsDownShift => IsKeyPressed((ushort)VirtualKeys.LeftShift) || IsKeyPressed((ushort)VirtualKeys.RightShift);
private static bool IsDownAlt => IsKeyPressed((ushort)VirtualKeys.LeftMenu) || IsKeyPressed((ushort)VirtualKeys.RightMenu) || IsKeyPressed((ushort)VirtualKeys.Menu);
private static bool IsAltGr => IsDownControl && IsDownAlt;
Czas oczekiwania
źródło
0

Ważne kombinacje klawiszy Alt + Gr na domyślnej niemieckiej klawiaturze to:

  • @ ... AltGr + Q (jeśli naciśniesz te same klawisze na klawiaturze OS X, aplikacja zostanie zamknięta)
  • € ... AltGr + E.
  • {... AltGr + 7
  • [... AltGr + 8
  • ] ... AltGr + 9
  • } ... AltGr + 0
  • \ ... AltGr + ß
  • ~ ... AltGr + +
  • | ... AltGr + <
  • µ ... AltGr + M
Mike L.
źródło