Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 28-07-2004
delphinario delphinario is offline
Registrado
 
Registrado: jul 2004
Posts: 4
Poder: 0
delphinario Va por buen camino
bloquear ventana padre cuando creo la hija

hola,

en mi programilla necesito que el usuario no pueda acceder a la ventana padre mientras q la hija este abierta, la cosa es que no puedo deshabilitarla pq sigo trabajando por codigo sobre el padre(mostrando mensajes en la barra de estado y demas...) como lo hago?


gracias
Responder Con Cita
  #2  
Antiguo 28-07-2004
Avatar de delphi.com.ar
delphi.com.ar delphi.com.ar is offline
Federico Firenze
 
Registrado: may 2003
Ubicación: Buenos Aires, Argentina *
Posts: 5.932
Poder: 27
delphi.com.ar Va por buen camino
¿Has oído hablar de formularios modales?
__________________
delphi.com.ar

Dedique el tiempo suficiente para formular su pregunta si pretende que alguien dedique su tiempo en contestarla.
Responder Con Cita
  #3  
Antiguo 28-07-2004
Avatar de ruina
ruina ruina is offline
Miembro
 
Registrado: jun 2004
Posts: 196
Poder: 20
ruina Va por buen camino
me parece que necesita algo mas "enrevesado" que un showmodal...

En cualquier caso la tésnica que voy a explicar no se deberia de usar, seguro que la forma correcta de hacerlo es atraves de un showmodal... eso de que el form de debajo siga trabajando es muy raro.
ahi vamos:

ok, sacamos dos forms que se usan mutuamentes, esto es, en la causula uses (la del implementation, no la de interface que sino os dará una referencia cruzada al compilar)

Form1
Código Delphi [-]
procedure TForm1.Button1Click(Sender: TObject);
begin
    Form2.Show;
    self.Enabled:=false;
end;

form2, escribimos el evento OnHide del formulario
Código Delphi [-]
procedure TForm2.FormHide(Sender: TObject);
begin
    form1.Enabled:=true;
end;

y a correr!
(pero recordar que esto no lo deben hacer en casa, si se hace inevitable el uso de esto es que algo está mal diseñado )
__________________
todo el mundo debe creer en algo... yo creo que voy a tomarme otra copa.
Responder Con Cita
  #4  
Antiguo 28-07-2004
Avatar de delphi.com.ar
delphi.com.ar delphi.com.ar is offline
Federico Firenze
 
Registrado: may 2003
Ubicación: Buenos Aires, Argentina *
Posts: 5.932
Poder: 27
delphi.com.ar Va por buen camino
Cita:
Empezado por ruina
En cualquier caso la tésnica que voy a explicar no se deberia de usar, seguro que la forma correcta de hacerlo es atraves de un showmodal... eso de que el form de debajo siga trabajando es muy raro
De ser así, te recomiendo utilizar las funciones DisableTaskWindows y EnableTaskWindows.

Saludos!
__________________
delphi.com.ar

Dedique el tiempo suficiente para formular su pregunta si pretende que alguien dedique su tiempo en contestarla.
Responder Con Cita
  #5  
Antiguo 28-07-2004
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Yo no veo nada de raro en que el formulario de abajo muestre mensajes mientras se trabaja en la ventana modal ni creo que sea reflejo de un mal diseño. Y enfatizo modal porque el hecho de mostrar una ventana modal no impide en lo absoluto actualizar por código propiedades de la ventana de abajo. La solución de delphi.com.ar de usar formularios modales es más que suficiente.

// Saludos
Responder Con Cita
  #6  
Antiguo 28-07-2004
Avatar de delphi.com.ar
delphi.com.ar delphi.com.ar is offline
Federico Firenze
 
Registrado: may 2003
Ubicación: Buenos Aires, Argentina *
Posts: 5.932
Poder: 27
delphi.com.ar Va por buen camino
Cita:
Empezado por roman
Yo no veo nada de raro en que el formulario de abajo muestre mensajes mientras se trabaja en la ventana modal ni creo que sea reflejo de un mal diseño. Y enfatizo modal porque el hecho de mostrar una ventana modal no impide en lo absoluto actualizar por código propiedades de la ventana de abajo. La solución de delphi.com.ar de usar formularios modales es más que suficiente.
La otra sugerencia es para que si quiere que el método ShowModal no interrumpa el hilo de ejecución del procedimiento donde se lo utiliza.

Tengo un componente algo interesante para hacer cosas similares, pero como lo hice hace mucho me daría vergüenza publicar el código , tiene siervos rezagos de VB ... En cuanto lo emprolige, lo subo!
__________________
delphi.com.ar

Dedique el tiempo suficiente para formular su pregunta si pretende que alguien dedique su tiempo en contestarla.
Responder Con Cita
  #7  
Antiguo 01-10-2004
nicolasdom nicolasdom is offline
Miembro
 
Registrado: ago 2004
Posts: 41
Poder: 0
nicolasdom Va por buen camino
Cuando quiero crear mi formulario al hacer click en un boton hago esto:

Código:
procedure TMainForm.dxNavBarConfiguracionItem2Click(Sender: TObject);
begin
  dxNavBarConfiguracionItem2.Enabled:=False;
  Animaciones(False);
  Application.CreateForm(TFormConfEstMenues, FormConfEstMenues);
  Animaciones(True);
//  FormConfEstMenues.ShowModal;
end;
Bien pero yo quiero que me cree el formulario pero que no me lo muestre... es decir que me lo muestre cuando le pongo el ShowModal. Pero me lo muestra antes. Y si le destapo la linea de ShowModal me tira problemas pero si le pongo Show en ves de ShowModal no... que puede ser? sugerencias?
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


La franja horaria es GMT +2. Ahora son las 14:35:39.


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