Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Llamada A Un Form (https://www.clubdelphi.com/foros/showthread.php?t=36580)

nikotina 17-10-2006 16:44:24

Llamada A Un Form
 
Hola A Todos. Mi Consulta Es Como Debo Hacer Para Llamar A Una Aplicacion Que Esta En Otro Proyecto. Por Ejemplo: La Aplicacion "compras" En La Cual Al Precionar Un Boton Quiero Que Me Abra El Form De La Aplicacion "pedidos".-
Ya Lo Intente Mediante El Codigo:

Procedure Button1click(sender:object)
Begin
Pedidos.show;
End;

Pero Lo Llama Siempre Y Cuando Haya Sido Creado Desde El New Form. De Otra Forma No.

Espero Haber Sido Claro

Si Alguien Me Puede Ayudar Lo Agradecera Mucho.

Un Abrazo.

Enan0 17-10-2006 17:11:12

HOla mira la verdad que no es muy claro pero:
Si queres llamar al formulario PEDIDOS (no a la aplicacion PEDIDOS.EXE) estaria bien lo que estas haciendo, Siempre y cuando el formulario este creado, sino tendrias que crearlo previamente.
en los uses agregas el "UNIT"

y luego.

Código Delphi [-]
Procedure Button1click(sender: Tobject)
var Miform:TForm;
// O
    Miform: frmPEdidos; // (o como se llame
Begin
miform := Pedidos.create(self); //Si queres que dependa de este formulario)
// O
Miform:=pedidos.create(nil);
Miform.showmodal;
//lo pongo en modal, para que se ejecute y no devuelva el control hasta que nose cierra
miform.free;
end;

y si queres llamar a tu aplicacion Compilada
podes USar, El Shellexecute o winexec

Caral 17-10-2006 17:34:00

Hola
Creo segun entiendo son dos aplicaciones o proyectos o ejecutables diferenes, para llamar a de un ejecutable o proyecto a otro, siempre que se encuentren archivados en la misma carpeta ejemplo: c/proyecto/compras.exe y en la misma este pedidos.exe, solo tienes que ejecutar la que necesites la llamas asi:
Puedes usar un boton y en el evento on click pones:
Código Delphi [-]
Launch('Pedidos','');
Con solo esto la aplicacion pedidos se ejecutara, sin dejar de ejecutarse la aplicacion compras.
Espero sea esto lo que necesitas.
Saludos

Enan0 17-10-2006 18:14:27

Launch???...
Que version de Delphi estas usando NIKOTINA???
porque en delphi 4 a 6 nunca he visto ese launch.. y en trucomania u otros sitios hay una rutinas vastante interesantes para ejecutar un programa externo y no devolver el control hasta que finalize

Caral 17-10-2006 18:46:33

Hola Enan0
Yo uso Delphi 6, con este a mi me funciona perfectamente.
Ejecuta la aplicacion independientemente de la otra, puedes cerrar o abrir cualuiera de las dos o mas.
Saludos

avmm2004 17-10-2006 18:55:53

Cita:

Empezado por Caral
Hola Enan0
Yo uso Delphi 6, con este a mi me funciona perfectamente.
Ejecuta la aplicacion independientemente de la otra, puedes cerrar o abrir cualuiera de las dos o mas.
Saludos

De donde sacastes ESO (LAUNCH) ??????????:confused:

En delphi 2006 tampoco existe. Puedes mirar la unit que utiliza por curiosidad.

Gracias.

Caral 17-10-2006 19:08:49

Hola y perdon :D talvez lo hice sin querer;)
La cosa empieza asi:
Hay que crear un procedimiento primero:
Código Delphi [-]
procedure TForm1.Launch(AppName, Params: string);
begin
  ExecuteApp(AppName, Params);
end;
Y despues llamarlo:
Código Delphi [-]
procedure TForm1.BitBtn1Click(Sender: TObject);
begin
    Launch('Pedidos','');
end;
Ya se merezco el regaño, pero aqui esta como se hace.
Como se ejecuta via procedimiento, nada mas cambio el nombre del programa al que se quiere llamar, Obviamente uso ExecuteApp.:)
Saludos

Enan0 17-10-2006 19:34:56

Jajajja Si CARAL.. Lo hiciste Vos.. porque no exite :D

Y aparte no tiene mucho sentido porque lo que estas haciendo es llamar Al EXecuteAPP. o tambien al winexec.
o shellexecute, dependiendo si tenes la Unit Correcta agregada al programa

nikotina 18-10-2006 12:05:29

no pense que crearia tanta polemica!!
 
ja ja. espero no haber creado una polemica del tema. gracias a los dos por darme una ayuda. lo voy a implementar y les cuento.

otra vez gracias y saludos


La franja horaria es GMT +2. Ahora son las 01:52:21.

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