Visual Basic - click programa

Life is soft - evento anual de software empresarial
 
Vista:

click programa

Publicado por jose (5 intervenciones) el 25/10/2011 12:33:58
buenos dias
necesito hacerr un programa en vb6 que este siempre visible y que no coja nunca el foco, es decir , que no se pueda seleccionar, y por lo tanto la aplicacion qeu se encuentre detras tenga siempre el foco

Saludos
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Christian
Val: 119
Ha disminuido 1 puesto en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

click programa

Publicado por Christian (713 intervenciones) el 25/10/2011 16:43:43
Podes cambiar la propiedad windowsstate a minimized, para que quede en la barra de tareas o si buscas algo mas bueno , escribir codigo para que lo agregue como un icono al lado del reloj.

saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

click programa

Publicado por jose (5 intervenciones) el 25/10/2011 17:23:39
el problema es que el programa debe estar siempre visible, ya se que quedara parte de la pantalla en la que no se podra ver la informacion que aparece debajo pero es lo que necesito
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Christian
Val: 119
Ha disminuido 1 puesto en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

click programa

Publicado por Christian (713 intervenciones) el 25/10/2011 20:11:59
Option Explicit

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 HWND_TOPMOST = -1 'bring to top and stay there
Private Const HWND_NOTOPMOST = -2 'put the window into a normal position

Private Const SWP_NOMOVE = &H2 'don't move window
Private Const SWP_NOSIZE = &H1 'don't size window

Private Declare Function GetForegroundWindow Lib "user32" () As Long

Private Sub Timer1_Timer()
'If the window on top is not this window...
If Me.hWnd <> GetForegroundWindow Then
'Make this form be on top
Call SetWindowPos(GetForegroundWindow, HWND_NOTOPMOST, 0, 0, 0, 0, SWP_NOMOVE Or SWP_NOSIZE)
'Make the window on top below this form
Call SetWindowPos(hWnd, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOMOVE Or SWP_NOSIZE)
End If
End Sub

---------------------------------------------------------------------------------------------------------------------------------------

Esa es la solucion

te dejo el link con la data

http://www.freevbcode.com/ShowCode.asp?ID=7595
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

click programa

Publicado por jose (5 intervenciones) el 26/10/2011 08:34:34
Explico el programa,
El programa se trata de una calculadora acorde a mis necesidades que debe estar siempre visibl ene la pantalla, y que envia el resultado a la aplicacion qeu este activa,
bien he conseguido detectar la tecla que se pulsa segun coordenadas en la pantalla, tambien envia la informacion a la ventana que se haya seleccionado previamente ya que guardo el handle cuando selecciono una distinda de mi aplicacion, el problema reside en que al hacer click en el programa aunque no tenga ningun evento asociado al programa, únicamente el evento esta con un timer y las coordenadas respecto a la pantalla, aún así se sigue activando la aplicación asi que lo que estaba probando es que cuando en el area del programa, ya lo tengo el evento ese, guarde en una variable cuando se haga click y posteriormente desabilite las posibles acciones que pueda ocasionar
he estado mirando
SetWindowsHookEx
pero no encuentro ejemplos del funcionamiento que necesito
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar