Pregunta

Quiero tener una combinación de teclas de acceso directo (como CTRL + ALT + D) en mi aplicación para invocar una función, pero no quiero que aparezca el acceso directo en ningún menú.¿Es posible tener un acceso directo disponible en su aplicación que de otra manera sea invisible?

¿Fue útil?

Solución

Puede usar el OnShortCut evento de la TApplicationEvents componente a esta tarea

Verifique este código

procedure TForm1.ApplicationEvents1ShortCut(var Msg: TWMKey;
  var Handled: Boolean);
begin
  if (Msg.CharCode = Ord('D')) and (HiWord(Msg.KeyData) and KF_ALTDOWN <> 0) and  (GetKeyState(VK_CONTROL) < 0) then
  begin
    ShowMessage('Ctrl+Alt+D Pressed') ;
    Handled := true;
  end;
end;

Otros consejos

Sí, es posible.Debe agregar un objeto de tacción de clase a su formulario. Puede especificar un acceso directo de teclado para la tacción y luego coloque su código en caso onexecute de la tacción.

Tenga en cuenta que no puede agregar una tacción directamente a su formulario, debe colocar una lista de tacción en su formulario y luego puede agregar una tacción a su lista de tacción.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top