mundodelphi

programacion en delphi

Cuadros de dialogo de windows en Delphi

El sistema operativo Windows nos ofrece diferentes cuadros de dialogo, para mostrar texto, cuadros con opciones, selección de directorios, entradas de texto, salvar documento.

ShowMessage – Mostrar un cuadro de dialogo simple
El primero que veremos es el cuadro de dialogo simple, ese cuadro de dialogo solo permite texto, sirve para informar de un proceso al usuario y solo tiene un botón Acepter, Ok

CuadroDialogo_simple

Para mostrar ese cuadro de dialogo usaremos la función ShowMessage de delphi
Function ShowMessage(‘mensaje’);

Ejemplo:
ShowMessage(‘Hola mundo!!!’);

MessageBox – Mostrar un cuadro de dialogo personalisado
Para crear un cuadro de dialogo con botones para poder escojer una opción y icono usaremos la funcion MessageBox de delphi

function MessageBox(Handler,const Message, Title: PChar; Flags: Longint = MB_OK): Integer;

Handler = identificador de ventana
Message
= Mensaje que queremos mostrarm
Title= Titulo del cuadro de dialogo
Flags: Botones y icono a mostrar

Botones:
Mb_AbortRetryIgnore: Muestra los botones Abortar, Reintentar y Ignorar
Mb_OK: Muestra el boton Aceptar
Mb_OkCancel: Muestra los botones Aceptar y Cancelar
Mb_RetryCancel: Muestra los botones Reintentar y Cancelar
Mb_YesNo: Muestra los botones SI y No
Mb_YesNoCancel: Muestra los botones Si, No y Cancelar

Iconos
Mb_IconWarning: Muestra el icono de Advertencia *Mb_IconExclamation
Mb_IconAsterisk: Muestra el icono de Información *Mb_IconInformation
Mb_IconQuestion: Muestra el icono de Pregunta
Mb_IconError: Muestra el icono de Error

Ejemplo:
MessageBox(form1.Handle,’mensaje’,'tittulo’,mb_YesNo  + mb_IconInformation);

creará un cuadro de dialogo parecido a la imagen
showmessage_ex1

La función MessageBox nos devuelve el boton que el usuario a pulsado, su resultado puede ser:

IdYes
: cuando el botón Si ha sido pulsado
IdRetry: cuando el botón Reintentar ha sido pulsado
IdOk: cuando el botón Aceptar ha sido pulsado
IdNo: cuando el botón No ha sido pulsado
IdIgnore: cuando el botón Ignorar ha sido pulsado
IdCancel: cuando el botón Cancelar ha sido pulsado
IdAbort: cuando el botón Abortar ha sido pulsado

Ejemplo 2 *obtener el resultado de un MessageBox

var
  botonsel : Integer;
begin
  botonsel := MessageBox(form1.Handle,'mensaje','tittulo',mb_yesno  +MB_ICONINFORMATION);
  if (botonsel = idYes) then showmessage('ha pulsado si');
end;

*el cuadro de dialogo con ShowMessage siempre aparece al centro de la aplicación

InputBox – Pedir información al usuario
Para pedir al usuario información a través de un cuadro de dialogo usaremos la función InputBox de delphi

Function InputBox(titulo,label,texto):string;

Titulo= titulo del cuadro de dialogo
label = la información a pedir
texto = texto predeterminado

La función nos devuelve una cadena con lo que ha introducido el usuario

Ejemplo

Var
  cadena: string;
begin
  cadena := inputbox('Entra un texto','texto','...');
end;

SelectDirectory – Para seleccionar un directorio
Con la función de delphi SelectDirectory  llamamos al cuadro de dialogo para seleccionar un directorio.

function SelectDirectory(const Caption: string; const Root: WideString; out Directory: string): Boolean; overload;
Ejemplo:

var
  initialDir,ResultDir: string;
begin
  ResultDir := '';
  if ( SelectDirectory('Select directory...',initialDir,resultDir) ) then
    ShowMessage(ResultDir);
end;

mostrará un cuadro como el siguiente:
selectdirectory

Codigo fuente del articulo – delphi 7.0

Tagged as: ,

Leave a Response

Please note: comment moderation is enabled and may delay your comment. There is no need to resubmit your comment.

Google Analytics Alternative