PDA

Ver la Versión Completa : ayuda comparar Handle


JerS
30-10-2006, 17:10:35
Amigos amantes de Borland, esta vez los molesto con la finalidad de que me ayuden con lo siguiente, estoy maximizando y minimizando aplicaciones activas en windows por medio delCódigo Delphi [-] (http://clubdelphi.com/foros/#)ShowWindow(Handle, SW_SHOWNORMAL);

pero necesito saber si la unica aplicacion que esta activa es la mia para no mandar a minimizar las otras; me explico estoy guardando los valores de las aplicaciones activas en varios handle's pero no se como preguntar si los handles estan vacios o si simplemente 2 handles tienen la misma informacion.. solo se trata de como comparar 2 handle's



GRACIASSS de antemano

seoane
30-10-2006, 18:11:36
No entiendo muy bien a que te refieres, pero podemos hablar un poco sobre handles. Un handle no es mas que valor entero (LongWord), es decir un numero, y puedes realizar comparaciones como harías con cualquier otra variable numérica (=, <>, etc). Además disponemos de varias APIs que nos dará información acerca de el.

Lo primero es asegurarse que ese handle identifica a una ventana, para eso tenemos la función isWindow. Ahora que sabemos que es una ventana podemos querer saber si es visible con IsWindowVisible, o puede que necesitemos saber si esta dispuesta a recibir los eventos de ratón y teclado con IsWindowEnabled y aun tenemos alguna otra función mas.

Espero que te sirva para empezar

roman
30-10-2006, 19:09:47
estoy guardando los valores de las aplicaciones activas en varios handle's

Cuidado con esto. Los identificadores de ventanas pueden cambiar durante la vida de una aplicación. Sin ir más lejos, en Delphi, cambios en algunas de las propiedades visuales de un formulario, fuerzan a una reconstrucción de la ventana y, por ende, el identificador cambia. En resumen, el identificadir que guardes, puede no ser válido cuano lo intentes usar.

// Saludos

JerS
30-10-2006, 20:19:01
por eso mismo roman, en sierto momento necesito saber que si lo que estoy almacenando en mis handle no es la misma aplicacion, porque yo estoy guardando simplemente la que esta activa y la que estaba activa antes que ella, y en sierto momento cuando mi aplicacion esta sola me guarda tanto en la activa como en la que estaba activa, en ese preciso momento necesito preguntar que si mis handle son diferentes o mejor aun si hay alguna manera de preguntar si mi aplicacion esta sola