Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Otros entornos y lenguajes > Lazarus, FreePascal, Kylix, etc.
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 29-07-2006
Avatar de salvica
salvica salvica is offline
Miembro
 
Registrado: mar 2004
Ubicación: Albacete (España) ... En un lugar de la Mancha ...
Posts: 304
Poder: 21
salvica Va por buen camino
Ventanas modales en Kylix

Hola a tod@s

¿podeis decirme como funcionan las ventanas modales en kylix?

intento lo siguiente:
Código Delphi [-]
{ Crear los directorios de trabajo del proceso }
  ForceDirectories( DIR_MAIN+OS_Separador+'CONFIG' );
  ForceDirectories( DIR_MAIN+OS_Separador+USUARIO );
  if( Libc.system(PChar('chmod -R 777 '+DIR_MAIN))<>-1 ) then begin
      Application.CreateForm(TForm_MessageBox, Form_MessageBox);
      with Form_MessageBox do begin
           Frm_MessageBox_Iniciar( 'No se pueden cambiar los permisos',
                                   'Los permisos del directorio '+DIR_MAIN+
                                   ' no pueden cambiarse'+OS_CRLF2+
                                   'Solicite ayuda al administrador del sistema'+OS_CRLF2+
                                   'Pulse el boton para continuar el proceso',
                                    imgIconWarning, btnAccept );
           ShowModal;
           Free;
      end;
end;
y me cierra la aplicación

Los contenidos de las variables son:
Código Delphi [-]
const
  OS_Separador = '/';
  OS_CRLF2     = #$D#$A#$D#$A;
  DIR_MAIN     = '/usr/local/PROGRAMAS';
  USUARIO      = 'salvador';

El form Form_MessageBox es una ventana con :
- un icono que contiene el tipo de mensaje (Error, Exclamation, Information, Question, Warning)
- una etiqueta de título
- una etiqueta de mensajes que puede ocupar varias líneas
- tres botones con ModalResult = mrNone y que les cambio el "Caption" cuando llamo a la función Frm_MessageBox_Iniciar() que está definida en "public"

El código de los botones de salida es el siguiente:
Código Delphi [-]
procedure TForm_MessageBox.BitBtn_ACEPTAR_OnClick(Sender: TObject);
begin
 ModalResult := mrYes;
end;

procedure TForm_MessageBox.BitBtn_CANCELAR_OnClick(Sender: TObject);
begin
  ModalResult := mrNo;
end;

procedure TForm_MessageBox.BitBtn_REINTENTAR_OnClick(Sender: TObject);
begin
  ModalResult := mrRetry;
end;

Gracias adelantadas
salvica
Responder Con Cita
  #2  
Antiguo 30-07-2006
Avatar de salvica
salvica salvica is offline
Miembro
 
Registrado: mar 2004
Ubicación: Albacete (España) ... En un lugar de la Mancha ...
Posts: 304
Poder: 21
salvica Va por buen camino
He estado mirando la ayuda de Kylix y recomienda NO USAR Free, sino que para liberar la memoria se utilice Release

Bien, ya no cierra la aplicación, pero ahora NO MUESTRA la ventana que la llamó, con lo que se queda "colgada" la aplicación (tengo que hacer Run / Program reset (Ctrl+F2)

He probado a poner un Form1.Show, pero como la llamada la hago en el OnCreate() (es un conjunto de comprobaciones, al crear la aplicación), parece que no continúa la secuencia.

¿Sugerencias?
Gracias
salvica
Responder Con Cita
  #3  
Antiguo 15-09-2006
Nose Nose is offline
Miembro
 
Registrado: abr 2004
Ubicación: Chile
Posts: 66
Poder: 21
Nose Va por buen camino
Disculpa, pero para llamar a ventanas modales uso el esquema try/finally y uso FreeAndNil ( Form ) en Kylixto.
Y usa ShowModal;

Última edición por Nose fecha: 15-09-2006 a las 01:51:49.
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
Consejos para ventanas modales ? Tecnic2 OOP 14 16-10-2006 22:37:20
Minimizar aplicación que tiene ventanas modales santiago14 Varios 1 12-10-2005 19:01:08
Ventanas modales PTW Varios 1 19-05-2005 16:21:22
Nuevas dudas sobre ventanas modales radiohead OOP 2 26-10-2004 15:34:34
Creación de Ventanas modales (duda) Perenquen OOP 2 26-10-2004 10:02:36


La franja horaria es GMT +2. Ahora son las 07:27:59.


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