PDA

Ver la Versión Completa : "Ocultar" formulario


Delphius
06-09-2004, 05:44:31
Hola a todos!

Estoy interesado en hacer que mi aplicación no se encuentre visible en la Task Bar, es decir que se vea el form solamente, se que en VB esto se puede lograr al poner el valor False en la propiedad ShowInTakBar. Quisiera lograr este mismo efecto en Delphi. He revisado la guía de APIs y no he encontrado alguna que me lo permita... a lo mejor estoy buscando mal. ¿Hay alguna API que me lo permita? ¿O hay otro modo de hacerlo?

Desde ya muchas gracias.

__cadetill
06-09-2004, 12:28:44
pon

SetWindowLong(Application.Handle, GWL_EXSTYLE, WS_EX_TOOLWINDOW);
En el DPR de la aplicación

PD: recuerda que la función SetWindowLong está en la unit Windows

Delphius
07-09-2004, 17:33:25
Gracias por tu ayuda.... me sirvió de mucha ayuda!

Pero, no quiero ponerme pretencioso: estuve pensando que esa forma de visualización sea una opción que el usuario pueda activar o desactivar a gusto. Mi pregunta es: ¿Hay una manera de revertir el proceso? Se entiende, quiero que dependiendo de la preferencia indicada (True o false), se visualize o no en la Task Bar.

Gracias... espero comentarios.

roman
07-09-2004, 17:48:55
SetWindowLong es una función que cambia (entre otras cosas) el estilo de la ventana y regresa el valor anterior. Sólo tienes que guardar este último para poder restaurarlo cuando desees.

Sería recomendable que buscaras en la ayuda del SDK de Windows acerca de esta función para que te enteres de lo que estás haciendo.

// Saludos

__cadetill
07-09-2004, 18:17:00
Ahora que lo menciona el amigo Román, me he dado una vuelta por M$ y he visto que esta función ha sido substituida


Note This function has been superseded by the SetWindowLongPtr function. To write code that is compatible with both 32-bit and 64-bit versions of Microsoft® Windows®, use the SetWindowLongPtr function.

Así que te aconsejo que le des un vistazo también a esa función

SetWindowLong (http://msdn.microsoft.com/library/default.asp?url=/library/en-us/winui/winui/windowsuserinterface/windowing/windowclasses/windowclassreference/windowclassfunctions/setwindowlong.asp)
SetWindowLongPtr (http://msdn.microsoft.com/library/default.asp?url=/library/en-us/winui/WinUI/WindowsUserInterface/Windowing/WindowClasses/WindowClassReference/WindowClassFunctions/SetWindowLongPtr.asp)

Espero que te sea de ayuda

Delphius
10-09-2004, 05:41:34
Gracias por el aviso y las url's ...
Cuando tenga más tiempo, le dedicaré un estudio completo.
En cuento haya obtenido resultados, les aviso..
gracias por sacarme esa inquietud

Delphius
05-10-2004, 15:51:25
Muchas gracias!...
Ya he logrado lo que tanto deseaba hacer para darle funcionalidad a mi aplicación...
me fue de mucha ayuda sus consejos!