USUÁRIO:      SENHA:        SALVAR LOGIN ?    Adicione o VBWEB na sua lista de favoritos   Fale conosco 

 

  Fórum

  Visual Basic
Voltar
Autor Assunto:  Dúvida Messagebox
Tbs
SAO PAULO
SP - BRASIL
ENUNCIADA !
Postada em 02/02/2006 15:14 hs            
 
Gostaria de saber como faço para exibir um messagebox por cima de todas as janelas abertas pelo usuário, mesmo que não sejam a aplicação.
 
Obrigado!
   
Gelson Porto
Pontos: 2843 Pontos: 2843 Pontos: 2843
RIO DE JANEIRO
RJ - BRASIL
ENUNCIADA !
Postada em 14/02/2006 14:35 hs            
TBS, boa tarde..
 
       O messagebox normalmente esta preso ao sistema que o executou.
 
       Para colocar independete do sistema, o que poderia ser feito é uma aplicação com apenas um form e chama-lo através de outra aplicação passando os parametros de mensagem desejado.. Não sei se valeria a pena tanto trabalho e se satisfaz a sua necessidade.. Talvez o sistema de mensagem do sistema operacional te atendar melhor.
   
vaini
PARAPUÃ
SP - BRASIL
ENUNCIADA !
Postada em 15/02/2006 11:57 hs            
Voce pode criar um form, e usar o seguinte codigo:
 
Private Declare Function 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) As Long
Private Const SWP_FLAGS = 3
Private Const SWP_HWND_TOPMOST = -1
Private Const SWP_HWND_NOTOPMOST = -2
 
Public Sub AlwaysOnTop(myfrm As Form, SetOnTop As Boolean)
   Dim lFlag As Long
   If SetOnTop Then
      lFlag = SWP_HWND_TOPMOST
   Else
      lFlag = SWP_HWND_NOTOPMOST
   End If
   SetWindowPos myfrm.hwnd, lFlag, myfrm.Left / Screen.TwipsPerPixelX, myfrm.Top / Screen.TwipsPerPixelY, myfrm.Width / Screen.TwipsPerPixelX, myfrm.Height / Screen.TwipsPerPixelY, SWP_FLAGS
End SubLAGS
End Sub

Fernando Cesar Vaini

Se voce morrer daqui a 5 minutos, vai levar todo o seu conhecimento. Antes que isso aconteça, compartilhe-o!!!

   
Tbs
SAO PAULO
SP - BRASIL
ENUNCIADA !
Postada em 15/02/2006 22:04 hs            
Então amigos....
 
   O problema é que a messagebox fica presa dentro do sistema mesmo, então se o usuário minimizou a aplicação ele não saberá se há alertas para ele (messagebox que o sistema dispara automaticamente para alertar o usuário sobre alguma situação).
   Para resolver isso, precisava que a messagebox aparecesse por cima de todos os programas/janelas que o usuário está visualizando. Utilizei uma API de para exibição do messagebox, dessa forma a janela do messagebox não fica vinculado ao programa que chamou a api (minha aplicação), no entanto estou precisando prencher o parâmentro chamado hwnd, pois acredito que sua finalidade seja definir a ordem de exibição das janelas. Alguém pode me dar uma luz????
 
 Estive pensando também em criar um form para simular uma messagebox, mas também não consigo fazer com que ele apareça por cima de todos os programas/janelas abertos pelo usuário independente de pertencer ou não a minha aplicação....
 
 Se alguém puder ajudar ou tiver alguma outra sugestão eu agradesço!!!
 
 Obrigado!
   
vaini
PARAPUÃ
SP - BRASIL
ENUNCIADA !
Postada em 16/02/2006 06:31 hs            
O codigo que postei pra voce é exatamente isso....
Voce nem testou para saber se funcionava???
Voce cria um form, e coloca o codigo postado...e o form vai aparecer sempre acima de todos os outros, inclusive de outros programas....
 
Teste primeiro.................

Fernando Cesar Vaini

Se voce morrer daqui a 5 minutos, vai levar todo o seu conhecimento. Antes que isso aconteça, compartilhe-o!!!

   
Elieser Topassi
Pontos: 2843 Pontos: 2843
SÃO JOSÉ DO RIO PRETO
SP - BRASIL
ENUNCIADA !
Postada em 16/02/2006 08:36 hs            
Bem, se for Visual Basic vc tem um recurso que é definir nos atributos da msgbox a constante vbSystemModal... fica assim:
 
MsgBox "mensagem", vbSystemModal, Me.Caption
 
Testa ai... nao precisa de API nenhuma...


Elieser Carlos Topassi
Analista de Sistemas - Desenvolvedor VB/ASP/.Net

e-mail/msn:
elieser_topassi@yahoo.com.br
São José do Rio Preto,SP - Brasil
_____________________________________________________
Emoções "O caminho do tolo aos seus prórios olhos lhe parece reto, mas o sábio ouve conselhos" (Pv 12:15)

   
Página(s): 1/2      PRÓXIMA »


Seu Nome:

Seu eMail:

ALTERAR PARA MODO HTML
Mensagem:

[:)] = 
[:P] = 
[:(] = 
[;)] = 

HTML DESLIGADO

     
 VOLTAR

  



CyberWEB Network Ltda.    © Copyright 2000-2022   -   Todos os direitos reservados.
Powered by HostingZone - A melhor hospedagem para seu site
Topo da página