AJUDA COM KEYPREVIEW

PEGUDO 19/03/2010 08:42:11
#337370
Caros amigos,

Minha dúvida, acredito que, deve ser fácil de resolver, mas estou com um problema:
Como podem ver, pela figura da minha aplicação, Tenho duas telas, a 1ª, que é a de trás, e a 2ª, que aparece em destaque.

A 2ª tela é chamada após clicar em um item da ListView1, pertencente à 1ª tela.

Eu preciso que o evento KeyPreview esteja como [txt-color=#0000f0]True[/txt-color], no momento que a segunda Tela (frmClassificar) for carregada,
pois, assim, poderei colocar atalhos pelo teclado, deixando a aplicação mais ágil.
Eu já pus, no Load(), o código Me.KeyPreview = [txt-color=#0000f0]True,[/txt-color] mas ele só se torna [txt-color=#0000f0]True[/txt-color] se você clicar em
minimizar e depois maximizar de novo, mas desta maneira é inútil, não é?.

ARES 19/03/2010 08:57:25
#337374
já tentou usar na opção

Private Sub Form_Activate()
Me.KeyPreview = False
End Sub

PEGUDO 19/03/2010 09:09:09
#337376
Já tentei usar sim, inclusive tentei colocar no código:

Me.WindowState = vbMinimized
Me.WindowState = vbNormal

...para ver se ele setava o foco na janela, mas não funcionou e mesmo que funcionasse, são abertas 50 janelas da 2ª tela por vez, então ficaria muito lento.

Obrigado
JOSIAS2010 19/03/2010 09:18:43
#337379
Private Sub List1_KeyDown(KeyCode As Integer, Shift As Integer)
1TELA.Show
End Sub

NAO SEI SE é ISSO
QUANDO PRESIONAR QUALQUER TECLA NO LIST1 VAI PARA A TELA1 OU TELA2
ARES 19/03/2010 09:19:24
#337381
desculpe-me pela informação sem testar, pois estou sem pc agora,

já tentou a partir do form número 1

frm2.KeyPreview = true
frm2.show 1
PEGUDO 19/03/2010 09:49:17
#337389
Pessoal,
Obrigado pela atenção, mas resolvi meu problema.

Fiz uma tremenda gambiarra. Coloquei um Botão fora das dimensões do form (deste jeito ninguém o vê),
No Load do Form, eu coloquei o TabIndex, do botão, iqual a zero e joguei o código para os atalhos no KeyPress do botão.

Valeu Pessoal.
Tópico encerrado , respostas não são mais permitidas