Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > API de Windows
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 11-11-2009
pedrosan pedrosan is offline
Miembro
 
Registrado: nov 2009
Posts: 14
Poder: 0
pedrosan Va por buen camino
Muchas gracias, muy buen aporte, voy a investigar y meter mano por ahí...veremos que sale
Responder Con Cita
  #2  
Antiguo 12-11-2009
pedrosan pedrosan is offline
Miembro
 
Registrado: nov 2009
Posts: 14
Poder: 0
pedrosan Va por buen camino
Mover mi ventana pegada a la ventana de otra aplicacion?

Salio perfecto,funciona trabajando con un hook, solo que en vez de usar SetWindowsHookEx utilicé la funcion SetCWPMSGHook() que instala un hook para los mensajes WH_CALLWNDPROC y/o WH_GETMESSAGE. Esta funcion se encuentra en la dll gratuita dscwpmsg.dll.
El código dentro de la funcion callback (esta función es llamada por el hook instalado desde la dll,dscwpmsg) sería algo así:

function Callback(SenderHWnd:HWND; wMsg:LongInt; wParam:LongInt; lParam:LongInt): LongInt;
.
.
.
WinClassName := GetWindowClassName(SenderHWnd);
WM_SYSCOMMAND: begin
if (WParam = SC_MINIMIZE) then
begin
if (WinClassName = 'xxxxxx') then
Main.ShowMinimizedWebBrowser();
end;
if (WParam = SC_RESTORE) then
begin
if (WinClassName = 'xxxxxx') then
Main.ShowNormalWebBrowser();
end;
end;

.
.
.
Ahora bien, lo que voy a intentar hacer es que mi ventana se mueva si es q la ventana de la otra apliacion se mueve, es decir,si se arrastra la ventana de la aplicacion,mi ventana se mueva pegada a ella,junto con ella,no se si me explico... Si alguien tiene algún aporte al respecto se lo voy a agradecer,mientras veo que me va saliendo.

Saludos!
Responder Con Cita
  #3  
Antiguo 12-11-2009
Avatar de escafandra
[escafandra] escafandra is offline
Miembro Premium
 
Registrado: nov 2007
Posts: 2.211
Poder: 22
escafandra Tiene un aura espectacularescafandra Tiene un aura espectacular
La idea que te propuse del Hook era para que capturaras los Mensajes WM_MOVING, WM_MOVE y WM_SIZING para reenviarselos a tu ventana con las modificaciones pertinentes según como adoses tu ventana a la anfitriona.

Por su puesto capturando mas mensajes puedes hacer mas cosas con tu ventana.

Saludos.
Responder Con Cita
  #4  
Antiguo 12-11-2009
pedrosan pedrosan is offline
Miembro
 
Registrado: nov 2009
Posts: 14
Poder: 0
pedrosan Va por buen camino
Si, tal cual, logre hacerlo, solo q tenia qveriguar cual funcion usar para lograr "movimiento"....basicamente,el código quedaría algo asi (a continuación del código escrito arriba):

WM_MOVING: Begin
if (WinClassName = 'xxxxxxx') then
begin
GetWindowRect(SenderHWnd, rcClient);
Main.MoveWebBrowser(rcClient.Top,rcClient.Right);
end;

Y en la funcion MoveWebBrowser utilizo MoveWindow con el handle correspondiente a mi venta y demás parametros...

El unico temita que me quedaría por intentar resolver es tratar de eliminar el delay entre que muevo la ventana y la mia cambia de posición...no se si será posible, tal vez utilizando AnimateWindow? ?

Muchas gracias escafandra, fue fundamental tu aporte!
Responder Con Cita
  #5  
Antiguo 31-10-2010
deneus deneus is offline
Miembro
 
Registrado: ago 2007
Posts: 10
Poder: 0
deneus Va por buen camino
Hola he leido este hilo y me ha parecido muy interesante, podias decirme donde poder descargar la dll dscwpmsg.dll? Gracias.
Responder Con Cita
  #6  
Antiguo 01-11-2010
pedrosan pedrosan is offline
Miembro
 
Registrado: nov 2009
Posts: 14
Poder: 0
pedrosan Va por buen camino
Cita:
Empezado por deneus Ver Mensaje
Hola he leido este hilo y me ha parecido muy interesante, podias decirme donde poder descargar la dll dscwpmsg.dll? Gracias.
Hola, encontraras informacion sobre la dll y podras descargarla de aqui: http://www.telecable.es/personales/j...htm?trucos.htm

Saludos!
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Capturar Eventos de Windows berna API de Windows 4 07-10-2008 19:40:52
Ejecutar aplicacion externa y mandarle eventos de teclado iqui.Balam API de Windows 0 16-06-2008 03:35:09
capturar eventos de un telefono fedeloko API de Windows 0 04-10-2006 01:35:48
Como saber cuando windows abre una ventana externa a nuestra apli? Xema API de Windows 6 23-09-2004 15:16:18
Capturar eventos de componentes vichovi OOP 3 13-06-2003 19:01:33


La franja horaria es GMT +2. Ahora son las 17:02:27.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi