Podría parecer natural utilizar Ctrl + +, Ctrl + -, y Ctrl + como accesos directos para el zoom de una aplicación, alejar, y restaurar zoom predeterminado (típicamente 100 %) acciones. Ahora, en Delphi, soy capaz de asignar Ctrl ++ y Ctrl + como accesos directos. El primero, sin embargo, requiere que se use el signo más de la parte principal del teclado; el signo más del teclado numérico no se puede usar. surgeCtrl + - (Ctrl + Hyphen-Minus) como tecla de abreviatura?
problema, sin embargo, cuando quiero asignar Ctrl +- como acceso directo. Simplemente no funciona. Si asigno "Ctrl + -" en el IDE, el valor almacenado en la propiedad ShortCut
es 16495
. Si restamos ssCtrl
de esto, obtenemos 111. Una solución alternativa, se podría pensar, sería asignar ShortCut := 45 + ssCtrl
, o, equivalentemente, ShortCut := Menus.ShortCut(45, [ssCtrl])
, porque ord('-') = 45
. Pero eso no funciona.
Sin embargo, he encontrado una solución de trabajo: ShortCut := 189 + ssCtrl
. Elijo 189 porque ese es el número que recibo cuando presiono la tecla "-" y escucho el evento KeyDown
.
Entonces, ¿por qué no estoy contento con esto? Bueno, me temo que la constante 189 solo es válida en teclados suecos. Intenté leer sobre esto y, como de costumbre, the MSDN documentation es bastante claro, pero quién sabe cómo maneja Delphi.
Consejo: agregue un alias para Ctrl + = para ampliar, de lo contrario, debe usar Ctrl + Shift ++ en los teclados sin teclados numéricos. – Douglas
@Douglas: en mi teclado, inserto un signo más presionando la tecla + (sin desplazamiento o Ctrl + Mayús) justo encima de "P" y "Å" (sí, los teclados suecos se parecen a eso - http: // www .99.se/attachments/powerbook-macbook-pro/14819d1199736163-svenskt-vs-danskt-tangentbord-800px-kb_sweden.svg.png). Este es también mi problema: las claves no son las mismas en diferentes teclados. –