Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Vinicius Callegaro

Ctrl+Tab

Recommended Posts

Olá amigos!Estou com uma dúvida... Como pegar o evento do Ctrl+Tab (que acredito ser do windows)?Gostaria de criar uma janelinha tipo a do Alt+Tab do Windows.Para quem não sabe, quando você está com 2 ou mais forms abertos, pode-se navegar entre os forms utilizando o atalho Ctrl+Tab.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Uma das formas que você poderia fazer, é criar HotKeys para estas duas teclas, um pequeno exemplo aqui, sendo que iria monitorar o ctrl+tab, quem quando precionados juntos iria disparar o evento do HotKey

Compartilhar este post


Link para o post
Compartilhar em outros sites

Consegui montar usando o HotKeys como você queria que funcionasse, ficou assim:

 

unit Unit1;interfaceuses  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,  Dialogs;type  TForm1 = class(TForm)	procedure FormCreate(Sender: TObject);	procedure FormDestroy(Sender: TObject);  private	{ Private declarations }	procedure WMHotkey(var Msg: TWMHotkey); message WM_HOTKEY;  public	{ Public declarations }  end;var  Form1: TForm1;implementation{$R *.dfm}procedure TForm1.FormCreate(Sender: TObject);beginif not RegisterHotkey(Handle, 1, MOD_CONTROL, VK_TAB) then	ShowMessage('Erro ao declarar Ctrl + Tab');end;procedure TForm1.FormDestroy(Sender: TObject);beginUnRegisterHotkey(Handle,1);end;procedure TForm1.WMHotkey(var Msg: TWMHotkey);beginif Msg.HotKey = 1 then	ShowMessage('Precionado Ctrl + Tab');end;end.
Na procedure WMHotkey ele efetua o controle dos HotKeys, e nas linhas:

 

if Msg.HotKey = 1 then	ShowMessage('Precionado Ctrl + Tab');
ele faz a validação, no caso teria somente que colocar o seu controle de forms com a telinha neste local...

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.