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 03-06-2005
Avatar de el_barto
el_barto el_barto is offline
Miembro
 
Registrado: may 2005
Ubicación: Bogota Colombia
Posts: 533
Poder: 19
el_barto Va por buen camino
Talking Error con ShowModal

Muchacho muy buenos dias

tengo un pequeño pero molesto inconveniente, estoy usando la instruccion:

Cita:
if Form3.ShowModal = mrOk then
begin
form3.Free;
Application.CreateForm(TForm1, Form1);
Application.Run;
end;


pero me saca un error que dice:

[Error] Project1.dpr(15): Undeclared identifier: 'mrOk'

la sintaxis esta bien y no encuentro el motivo del error, pueden ustedes ayudarme, muchas gracias
Responder Con Cita
  #2  
Antiguo 03-06-2005
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,

Prueba a añadir la unidad "Controls" en la cláusula "Uses" oportuna.

El error estriba en que es en la referida unidad en donde se declara la constante "mrOK".
__________________
David Esperalta
www.decsoftutils.com

Última edición por dec fecha: 03-06-2005 a las 19:45:34. Razón: (ampliación del texto)
Responder Con Cita
  #3  
Antiguo 04-06-2005
Avatar de vtdeleon
vtdeleon vtdeleon is offline
Miembro
 
Registrado: abr 2004
Ubicación: RD & USA
Posts: 3.236
Poder: 24
vtdeleon Va por buen camino
Saludos

No estoy muy seguro, pero creo que puedes usar IdOk en vez de MrOk y asi no agregar la unidad
__________________
Van Troi De León
(Not) Guía, Code vB:=Delphi-SQL, ¿Cómo?
Viajar en el tiempo no es teóricamente posible, pues si lo fuera, ya estarían aqui contándonos al respecto!
Responder Con Cita
  #4  
Antiguo 04-06-2005
Juanmi_pro Juanmi_pro is offline
Registrado
 
Registrado: may 2005
Posts: 2
Poder: 0
Juanmi_pro Va por buen camino
no no noo, e asii

Amos a ver..no t reconoce MROk sencillamente pq no es un valor de showmodal, sino de modalresult. La propiedad del formulario es modalresult, asi:

form3.modalresult = MrOk

Saludos,Juanmi
Responder Con Cita
  #5  
Antiguo 04-06-2005
Avatar de vtdeleon
vtdeleon vtdeleon is offline
Miembro
 
Registrado: abr 2004
Ubicación: RD & USA
Posts: 3.236
Poder: 24
vtdeleon Va por buen camino
Saludos.
Cita:
Empezado por Juanmi_pro
Amos a ver..no t reconoce MROk sencillamente pq no es un valor de showmodal, sino de modalresult. La propiedad del formulario es modalresult, asi:
form3.modalresult = MrOk
La sintaxis de el_barto está correcta. Esta llama el form3 en forma modal y si el form3 devuelve un valor mrOk (o IdOk) creará el formulario Form1.

Para mi es 100% funcional, aunque creo que no es necesario tener Form3.free ya que se cierra sola.
__________________
Van Troi De León
(Not) Guía, Code vB:=Delphi-SQL, ¿Cómo?
Viajar en el tiempo no es teóricamente posible, pues si lo fuera, ya estarían aqui contándonos al respecto!

Última edición por vtdeleon fecha: 04-06-2005 a las 01:27:43.
Responder Con Cita
  #6  
Antiguo 04-06-2005
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,

Tienes razón vtdeleon: podría usar "IdOk" y no añadir la unidad "Controls", pero, habría entonces de añadir la unidad "Windows", que es donde está la constante "IdOk".

En cuanto a lo de liberar el "Form3", debe ser porque no vuelva a hacerse uso de ese formulario. Digo yo...
__________________
David Esperalta
www.decsoftutils.com
Responder Con Cita
  #7  
Antiguo 04-06-2005
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 28
Lepe Va por buen camino
Cita:
Empezado por vtdeleon
aunque creo que no es necesario tener Form3.free ya que se cierra sola.
Código Delphi [-]
procedure TCustomForm.CloseModal;
var
  CloseAction: TCloseAction;
begin
  try
    CloseAction := caNone;
    if CloseQuery then
    begin
      CloseAction := caHide;
      DoClose(CloseAction);
    end;
    case CloseAction of
      caNone: ModalResult := 0;
      caFree: Release;
    end;
  except
    ModalResult := 0;
    Application.HandleException(Self);
  end;
end;

En principio, al cerrar una ventana modal se oculta, a menos que se haya especificado en el OnClose: action := cafree; esto se verifica en el DoClose(var Action:TcloseAction)

Un saludo
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita
  #8  
Antiguo 04-06-2005
Avatar de vtdeleon
vtdeleon vtdeleon is offline
Miembro
 
Registrado: abr 2004
Ubicación: RD & USA
Posts: 3.236
Poder: 24
vtdeleon Va por buen camino
Saludos
Cita:
Empezado por Lepe
En principio, al cerrar una ventana modal se oculta, a menos que se haya especificado en el OnClose: action := cafree; esto se verifica en el DoClose(var Action:TcloseAction)
Gracias por la Aclaracion
__________________
Van Troi De León
(Not) Guía, Code vB:=Delphi-SQL, ¿Cómo?
Viajar en el tiempo no es teóricamente posible, pues si lo fuera, ya estarían aqui contándonos al respecto!
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 13:13:56.


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