Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Probelmas Con Frmx (https://www.clubdelphi.com/foros/showthread.php?t=77556)

MRS@N 07-02-2012 18:26:32

Probelmas Con Frmx
 
Buenas amigos del foro, tiempo sin escribir aqui, estaba alejado de la programaci'on, pero el gran hijo vuelve a su casa. mi problemita es el sig, estoy program con delphi 7, necesito saber como hago para q mi ventana princial abra otra ventana y esta no se cierre hasta q la cierre el usuario, es decir, de la principal abre la frm secundaria y cuando le doy clik a la princiapal q esta abajo no se muestre hasta q cierre la frm secuendaria el usuario, graxxx...

ecfisa 07-02-2012 19:23:05

Cita:

necesito saber como hago para q mi ventana princial abra otra ventana y esta no se cierre hasta q la cierre el usuario, es decir, de la principal abre la frm secundaria y cuando le doy clik a la princiapal q esta abajo no se muestre hasta q cierre la frm secuendaria el usuario
Hola MRS@N.

En el evento OnCreate del form secundario poné lo siguiente:
Código Delphi [-]
procedure TForm2.FormCreate(Sender: TObject);
begin
  SetWindowPos(Handle, HWND_TOPMOST, Left, Top, Width, Height,
               SWP_NOACTIVATE or SWP_NOMOVE or SWP_NOSIZE);
end;

Saludos.

LoPiTaL 08-02-2012 08:38:43

Hola. Perdón por el comentario, por si no he entendido la pregunta, pero ¿no sería más fácil usar Form2.ShowModal?

Un saludo,
LoPiTaL

MRS@N 08-02-2012 11:58:01

Buenas, trate de usar el showmodal, pero mustra la forma 2, despue la cierro y cuando la vuelvo a abrir me muestra un error, es como si no puediera abrie de nuevo esa forma 2 con showmodal? o es q existe una manera de qitar la form2 q no sea destroy, cuando la qita la form2 para q muestre la form1 lo hago con form2.destroy y en la misma corrida la vuelvo a abrir me muestra un mensaje

LoPiTaL 08-02-2012 13:56:26

Sería conveniente que nos mostrases cómo lo haces.

Así te debería funcionar:

Código Delphi [-]
TForm1.Button1Click(Sender: TObject);
begin
  Form2.ShowModal;
end;

Si usas directamente Form2, no hace falta que lo destruyas (cuando cierras, el formulario sólo se oculta, no se destruye). Si quieres crearlo y destruirlo, entonces NO deberías usar la variable Form2, sino directamente hacerlo con la clase:

Código Delphi [-]
TForm1.Button1Click(Sender: TObject);
begin
  with TForm2.Create(nil) do begin
    try
      ShowModal;
    finally
      Free;
    end;
  end;
end;

Un saludo,
LoPiTaL

MRS@N 08-02-2012 15:31:45

buenas, Un Millon De Gracias Hno, Eso Era Lo Q Queria, No Debo Destruirla Sino Cerrar Con Close, Graxxxxxxx

Casimiro Notevi 08-02-2012 15:47:25

Cita:

Empezado por MRS@N (Mensaje 424523)
buenas, Un Millon De Gracias Hno, Eso Era Lo Q Queria, No Debo Destruirla Sino Cerrar Con Close, Graxxxxxxx


Recuerda nuestra guía de estilo, gracias por tu colaboración.
No escribas todo en mayúsculas, ya sabes.


La franja horaria es GMT +2. Ahora son las 04:13:31.

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