Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Otros entornos y lenguajes > C++ Builder
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 05-04-2017
Snaked Snaked is offline
Baneado
NULL
 
Registrado: sep 2016
Posts: 102
Poder: 0
Snaked Va por buen camino
Question Como Mover Ventana Externa al programa

como puedo mover la ventana de un programa abierto con ShellExecute a las coordenadas que yo quiera de la pantalla??? por ejemplo la 0,0

Thankss
Responder Con Cita
  #2  
Antiguo 05-04-2017
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.107
Poder: 34
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola,

Creo que podrías usar la función SetWindowPos.
__________________
David Esperalta
www.decsoftutils.com
Responder Con Cita
  #3  
Antiguo 05-04-2017
Snaked Snaked is offline
Baneado
NULL
 
Registrado: sep 2016
Posts: 102
Poder: 0
Snaked Va por buen camino
hola ..... la cuestion es que no se como obtener el Handle de la ventana
Responder Con Cita
  #4  
Antiguo 05-04-2017
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.267
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Cita:
Empezado por Snaked Ver Mensaje
hola ..... la cuestion es que no se como obtener el Handle de la ventana
El ShellExecute te devuelve un identificador del proceso. Si no me equivoco a partir de ese handle podrías explorar las ventanas que le pernetecen.
La otra opción (si tienes los datos necesarios -título o clase-) es buscar el Handle de la ventana que quieres mover utilizando FindWindows.

De ambas funciones seguro que encuentras ejemplos en el foro (si buscas por el nombre de la función).
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #5  
Antiguo 05-04-2017
Snaked Snaked is offline
Baneado
NULL
 
Registrado: sep 2016
Posts: 102
Poder: 0
Snaked Va por buen camino
lo hago asi pero aunque lo ejecuta sin errores.......no mueve la ventana

Código PHP:
HWND manejador;

  
ShellExecute(Handle,  // Handle de la fenêtre parent
                 
"open"// Action à effectuer
                 
"JumpLittle.exe"// Fichier
                 
""// Paramètres
                 
""// Répertoire par défaut
                 
SW_SHOWDEFAULT);

  
Sleep(4300);
  
manejador FindWindow(NULL,"JumpLittle.exe");
  
SetWindowPos(manejadorHWND_TOPMOST00600550SWP_SHOWWINDOW); 
Responder Con Cita
  #6  
Antiguo 05-04-2017
Snaked Snaked is offline
Baneado
NULL
 
Registrado: sep 2016
Posts: 102
Poder: 0
Snaked Va por buen camino
vale, ya he conseguido moverla......
Responder Con Cita
  #7  
Antiguo 05-04-2017
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.267
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Cita:
Empezado por Snaked Ver Mensaje
vale, ya he conseguido moverla......
El segundo parámetro es incorrecto:

Código Delphi [-]
manejador = FindWindow(NULL,"JumpLittle.exe");

Estaría bien que pusieras la solución final, por si alguien con el mismo problema llega a este hilo.
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #8  
Antiguo 06-04-2017
Snaked Snaked is offline
Baneado
NULL
 
Registrado: sep 2016
Posts: 102
Poder: 0
Snaked Va por buen camino
la solucion final correcta (por lo menos la que funciona en mi programa) es esta Neftali:

Código PHP:
  manejador FindWindow(NULL,"Jumpstart Little for Dumpper");
  
SetWindowPos(manejadorHWND_TOPMOST00460300SWP_SHOWWINDOW);
  
ShowWindow(manejadorSW_SHOWNORMAL); 
se me habia olvidado llamar al ShowWindow para que se pusiese en portada

esta es una captura del programa que estoy haciendo:


Última edición por Snaked fecha: 06-04-2017 a las 12:16:32.
Responder Con Cita
Respuesta



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
Como mover una ventana sin bordes SMTZ API de Windows 9 25-02-2017 15:24:39
Capturar eventos de una ventana externa pedrosan API de Windows 7 01-11-2010 13:50:22
Mover ventana joHn je@N API de Windows 3 05-06-2005 04:53:15
Como saber cuando windows abre una ventana externa a nuestra apli? Xema API de Windows 6 23-09-2004 15:16:18
Como mover una ventana??? cone220 Varios 3 01-06-2004 23:04:09


La franja horaria es GMT +2. Ahora son las 05:02:34.


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