COMO APARECER UMA TELA SOBRE A OUTRA

FGONCALVES 24/02/2010 11:50:56
#335208

pessoal, tenho um cronometro que conta o tempo regressivamente e de tempos em tempos deve aparecer uma tela informando o tempo restante de aula do aluno ate que no final apareca uma tela finalizando a aula do aluno.
porem preciso que estas telas se sobreponham sobre qualquer tela que esteja aberta no computador. como eu faco isso???

abrir elas estao abrindo, mas estao ficando por traz em segundo plano e eu preciso forca-las para que aparecam em primeiro plano.

obrigado!
ASHKATCHUP 24/02/2010 12:33:46
#335219
Resposta escolhida
No bom e velho VB6, eu fazia assim:

Declaração:

Public Declare Sub SetWindowPos Lib [Ô]user32[Ô] (ByVal hWnd As Long, ByVal hWndInsertAfter As Long, ByVal X As Long, ByVal Y As Long, ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long)
Public Const HWND_TOPMOST = -1
Public Const SWP_NOACTIVATE = &H10
Public Const SWP_SHOWWINDOW = &H40
Public Const SWP_NOMOVE = &H2
Public Const SWP_NOSIZE = &H1


Uso:

SetWindowPos fFormTemp.hWnd, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOACTIVATE Or SWP_SHOWWINDOW Or SWP_NOMOVE Or SWP_NOSIZE
FGONCALVES 24/02/2010 15:06:49
#335236

bom, coloquei o codigo aki.

apenas troquei onde vc colocou fFormTemp.hWnd coloquei o nome do form.handle (será q ta certo?)

o problema agr eh q o fomulario sequer aparece...
poderia me dar detalhes de como colocar esse código???

obrigado
ASHKATCHUP 24/02/2010 15:19:51
#335241
Esquece tudo que eu falei. é só colocar


Form1.TopMost = True
FGONCALVES 24/02/2010 16:32:39
#335256

eh isso mesmo, amigão!!!

obrigado!!!
Tópico encerrado , respostas não são mais permitidas