MAXIMIZAR JANELA EM PRIMEIRO PLANO
Olá amigos,
estou tentando fazer com que meu programa fique em primeiro plano caso um determinado lembrete esteja no horario programado... minha dúvida é: como colocar o meu programa desenvolvido em VB6 em primeiro plano quando se está em outro programa, como por exemplo o Chrome. é possÃvel?
já tentei o seguinte:
If MDIPrincipal.WindowState = vbMinimized Then
MDIPrincipal.WindowState = vbMaximized
End If
ele maximiza, porém por trás do programa que estiver aberto.
se nenhum programa está aberto, funciona normalmente.
como colocar em primerio plano no windows?
valew galera.
estou tentando fazer com que meu programa fique em primeiro plano caso um determinado lembrete esteja no horario programado... minha dúvida é: como colocar o meu programa desenvolvido em VB6 em primeiro plano quando se está em outro programa, como por exemplo o Chrome. é possÃvel?
já tentei o seguinte:
If MDIPrincipal.WindowState = vbMinimized Then
MDIPrincipal.WindowState = vbMaximized
End If
ele maximiza, porém por trás do programa que estiver aberto.
se nenhum programa está aberto, funciona normalmente.
como colocar em primerio plano no windows?
valew galera.
Olá,
veja se algumas destas soluções funcionam:
para chamar:
Se nenhuma funcionar tente a API SetTopMostWindow
veja se algumas destas soluções funcionam:
Private Declare Function BringWindowToTop Lib [Ô]user32[Ô] (ByVal hwnd As Long) As Long
para chamar:
BringWindowToTop Me.hwnd
Me.SetFocus
AppActivate Me.Caption
Me.Show
Se nenhuma funcionar tente a API SetTopMostWindow
valew amigao...
nao imaginava que teria essa possibilidade. funcionou perfeitamente... ele maximiza sempre... na frente de qualquer outro programa..
o único porém, é que ele deixa o FOCU no programa que já estava a frente.
Se pressionar qualquer tecla no teclado, o evento ocorre na tela que estava aberta antes e nao no meu sistema.
já tentei colocar MDIPrincipal.SetFocus, Me.SetFocus, cmdBotao.SetFocus e nao funciona.
será que voce pode me ajudar nesse detalhe?
nao imaginava que teria essa possibilidade. funcionou perfeitamente... ele maximiza sempre... na frente de qualquer outro programa..
o único porém, é que ele deixa o FOCU no programa que já estava a frente.
Se pressionar qualquer tecla no teclado, o evento ocorre na tela que estava aberta antes e nao no meu sistema.
já tentei colocar MDIPrincipal.SetFocus, Me.SetFocus, cmdBotao.SetFocus e nao funciona.
será que voce pode me ajudar nesse detalhe?
veja a 3º solução:
AppActivate Me.Caption
Citação::
veja a 3º solução:AppActivate Me.Caption
ja havia tentado isso.. nao deu tambem.
coloquei todas as opcoes que voce mandou ..
ele apenas aparece na frente, mas nao da o focu. Qualquer tecla ele da o evento na tela que estava na frente.
use esta:
Private Declare Function SetForegroundWindow Lib [Ô]user32.dll[Ô] (ByVal hwnd As Long) As Long
SetForegroundWindow Me.hwnd
Me.Command1.SetFocus
Citação::
use esta:Private Declare Function SetForegroundWindow Lib [Ô]user32.dll[Ô] (ByVal hwnd As Long) As Long
SetForegroundWindow Me.hwnd
Me.Command1.SetFocus
assim nao funcionou
SetForegroundWindow Me.hwnd
tive que colocar assim:
GetForegroundWindow
mesmo assim nao funcionou...
ele até seleciona o botao (com tracejado em volta) mas ao pressionar enter, o evento nao é disparado. Só clicando com o mouse para funcionar.
e com o space em vez do enter, funciona?
aqui funciona bem...
Private Declare Function SetForegroundWindow Lib [Ô]user32.dll[Ô] (ByVal hwnd As Long) As Long
SetForegroundWindow Me.hwnd
Me.Command1.SetFocus
aqui funciona bem...
mas esse seria o mesmo que usar
Private Declare Function BringWindowToTop Lib [Ô]user32[Ô] (ByVal hwnd As Long) As Long
certo?
aqui nao funcionou.
o foco fica na tela anterior (que ja estava aberta).
Private Declare Function BringWindowToTop Lib [Ô]user32[Ô] (ByVal hwnd As Long) As Long
certo?
aqui nao funcionou.
o foco fica na tela anterior (que ja estava aberta).
vc secalhar copiar logo assim que postei, eu tinha posto a API GetForegroundWindow em vez de SetForegroundWindow, mas editei logo de seguida...
use só a API SetForegroundWindow
se não conseguir, não lhe posso ajudar mais
té+
use só a API SetForegroundWindow
Private Declare Function SetForegroundWindow Lib [Ô]user32.dll[Ô] (ByVal hwnd As Long) As Long
SetForegroundWindow Me.hwnd
Me.Command1.SetFocus
se não conseguir, não lhe posso ajudar mais
té+
realmente nao da certo nao. fiz um teste um em projeto novo e mesma coisa.
ele aparece, mas o foco fica na janela anterior.
estou enviando em anexo
ele aparece, mas o foco fica na janela anterior.
estou enviando em anexo
Tópico encerrado , respostas não são mais permitidas