Autor
|
Tema: Ventana siempre visible (Leído 2,232 veces)
|
TheJucas21
Desconectado
Mensajes: 43
|
Como veran en el titulo. Lo que busco que es lo siguiente:
Yo programo X programas, y quiero lograr que esten SIEMPRE visibles osea, que aunque abras el navegador ese .exe este delante de el y no que uses otro el otro tambien lo pase... Se entiende?
Eso me serviria MUCHO y lo vi en varios programas.
|
|
|
En línea
|
|
|
|
Cj2009z
Desconectado
Mensajes: 52
|
Necesitas dos commandbutton en el proyecto y pega este código: 'Constantes para pasarle a la función Api SetWindowPos Const SWP_NOMOVE = 2 Const SWP_NOSIZE = 1 Const HWND_TOPMOST = -1 Const HWND_NOTOPMOST = -2 ' ' Función Api SetWindowPos 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 'En el primer parámetro se le pasa el Hwnd de la ventana 'El segundo es la constante que permite hacer el OnTop 'Los parámetros que están en 0 son las coordenadas, o sea la _ pocición, obviamente opcionales 'El último parámetro es para que al establecer el OnTop la ventana _ no se mueva de lugar y no se redimensione Private Sub Command1_Click() SetWindowPos Me.hWnd, HWND_TOPMOST, 0, 0, 0, 0, _ SWP_NOMOVE Or SWP_NOSIZE End Sub 'Colocamos la ventana en su posicion original: Private Sub Command2_Click() 'Hacemos lo mismo que en el evento anterior, pero pasandole la otra constante 'para que deje de estar siempre encima de las demás, estado normal SetWindowPos Me.hWnd, HWND_NOTOPMOST, 0, 0, 0, 0, SWP_NOMOVE Or SWP_NOSIZE End Sub Private Sub Form_Load() Command1.Caption = "Siempre visible (Always Ontop)" Command2.Caption = "Ventana Normal" End Sub
espero que te sirva.
|
|
|
En línea
|
|
|
|
TheJucas21
Desconectado
Mensajes: 43
|
Me manda error en esta parte: ' Función Api SetWindowPos 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
|
|
|
En línea
|
|
|
|
Cj2009z
Desconectado
Mensajes: 52
|
verifica que estes llamando correctamente la función: verifica esto: SetWindowPos Me.hWnd, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOMOVE Or SWP_NOSIZE
Aqui estas indicando que la ventana este siempre visible(sobre todas). SetWindowPos Me.hWnd, HWND_NOTOPMOST, 0, 0, 0, 0, SWP_NOMOVE Or SWP_NOSIZE
y esta es para que la ventana quede normal. y por último las constantes: Const SWP_NOMOVE = 2 Const SWP_NOSIZE = 1 Const HWND_TOPMOST = -1 Const HWND_NOTOPMOST = -2
el código funciona corretamente, solo es que verifiques que lo hayas copiado bien.
|
|
« Última modificación: 17 Mayo 2014, 04:25 am por Cj2009z »
|
En línea
|
|
|
|
TheJucas21
Desconectado
Mensajes: 43
|
Muchas Gracias! Este seria todo mi codigo del proyect asi para ver si funcionaba. Const SWP_NOMOVE = 2 Const SWP_NOSIZE = 1 Const HWND_TOPMOST = -1 Const HWND_NOTOPMOST = -2 ' 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 Sub Command1_Click() SetWindowPos Me.hWnd, HWND_TOPMOST, 0, 0, 0, 0, _ SWP_NOMOVE Or SWP_NOSIZE End Sub
Private Sub Command2_Click() 'Hacemos lo mismo que en el evento anterior, pero pasandole la otra constante 'para que deje de estar siempre encima de las demás, estado normal SetWindowPos Me.hWnd, HWND_NOTOPMOST, 0, 0, 0, 0, SWP_NOMOVE Or SWP_NOSIZE End Sub
Private Sub Form_Load() Command1.Caption = "Siempre visible" Command2.Caption = "Ventana Normal" End Sub
No se si es asi como quisiste decirmelo pero lo puse asi y funciono XD Gracias! Suerte!
|
|
|
En línea
|
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
como dejar un formulario siempre visible?
Programación Visual Basic
|
G3r4rD
|
1
|
3,874
|
1 Marzo 2006, 11:20 am
por _Sergi_
|
|
|
Un formulario siempre VISIBLE
Programación Visual Basic
|
Snort
|
2
|
2,126
|
17 Octubre 2006, 18:19 pm
por ranslsad
|
|
|
JAVA 3D: ¿cómo mantener un text2d siempre visible al rotar una escena grafica?
Java
|
mikelonix
|
0
|
1,473
|
25 Junio 2014, 12:27 pm
por mikelonix
|
|
|
Cómo tener cualquier aplicación siempre visible en Windows 10
Noticias
|
wolfbcn
|
0
|
1,459
|
10 Marzo 2019, 02:50 am
por wolfbcn
|
|
|
Posicionar ventana hija siempre relativa a la ventana padre.-
Scripting
|
El mas antiguo
|
2
|
3,571
|
17 Agosto 2022, 14:34 pm
por El mas antiguo
|
|