Baseform clase


¿alguna vez has encontrado a ti mismo añadiendo el mismo código para diferentes formas? & nbsp Bueno, ahora usted puede utilizar lo siguiente como una clase base para todas las formas.

=============== & nbsp & nbsp COMENZAR CÓDIGO, nbsp ======================
unidad de BaseForm

interfaz

utiliza SysUtils, Classes, Formas, Windows

tipo
& nbsp TBaseForm = class(TForm)
& nbsp protegido
& nbsp & nbsp & nbsp función IsModal(): Boolean
& nbsp & nbsp & nbsp procedimiento KeyDown(var Clave: Palabra Shift: TShiftState) reemplazar
& nbsp & nbsp & nbsp procedimiento ShowError(E: Exception)
& nbsp & nbsp & nbsp función MsgBox(Msg: string
& nbsp & nbsp & nbsp & nbsp & nbsp uType: Integer = MB_OK o MB_ICONSTOP): Integer sobrecarga
& nbsp & nbsp & nbsp función MsgBox(Msg, MsgCaption: string
& nbsp & nbsp & nbsp & nbsp & nbsp uType: Integer = MB_OK o MB_ICONSTOP): Integer sobrecarga
& nbsp final

aplicación

utiliza los Controles

{ TPipeCallBaseForm }

la función de TBaseForm.MsgBox(Msg: string
& nbsp uType: Integer = MB_OK o MB_ICONSTOP): Integer
begin
& nbsp Resultado := MsgBox(Mensaje, Título, uType)
fin

procedimiento TBaseForm.KeyDown(var Clave: Palabra Shift: TShiftState)
begin
& nbsp heredado

& nbsp if ((IsModal) y (GetActiveWindow() = Asa) y (Clave = = VK_ESCAPE)) entonces
& nbsp & nbsp & nbsp ModalResult := mrCancel
fin

la función de TBaseForm.MsgBox(Msg, MsgCaption: string
& nbsp uType: Integer = MB_OK o MB_ICONSTOP): Integer
var
& nbsp FlashInfo: FLASHWINFO
begin
& nbsp si (GetForegroundWindow() <> Asa), a continuación,
& nbsp empezar
& nbsp & nbsp & nbsp (* si la ventana actual no está activo hacen de flash para avisar al usuario *)
& nbsp & nbsp & nbsp FillChar(FlashInfo, SizeOf(FLASHWINFO), 0)
& nbsp & nbsp & nbsp FlashInfo.cbSize := SizeOf(FLASHWINFO)
& nbsp & nbsp & nbsp FlashInfo.dwFlags := FLASHW_ALL o FLASHW_TIMERNOFG
& nbsp & nbsp & nbsp FlashInfo.hwnd := Identificador
& nbsp & nbsp & nbsp FlashWindowEx(FlashInfo)
& nbsp final

& nbsp Resultado := MessageBox(Mango, PChar(Msg), PChar(Título), uType)
fin

procedimiento TBaseForm.ShowError(E: Exception)
begin
& nbsp MsgBox(Format('Error: %s'#13#13 de Error de la Clase: %s', [E. Mensaje, E. ClassName]))
fin

la función de TBaseForm.IsModal: Boolean
begin
& nbsp Resultado := (fsModal en FormState)
fin

.

=============== & nbsp & nbsp CÓDIGO de FIN & nbsp ======================

Para utilizar esta base de formulario simple de agregar 'BaseForm' a la cláusula uses y cambiar las formas de implementación de:

& nbsp TfrmMyForm = class(TForm)

& nbsp TfrmMyForm = clase(TBaseForm)

Ahora, cada formulario tendrá la capacidad de:

  • Pantalla un error en una manera consistente
  • Mostrar un MessageDlg mientras parpadea la ventana si no se activa.
  • Volver mrCancel si el usuario presiona la tecla ESC en un cuadro de diálogo modal.









Baseform clase


Baseform clase : Multi-millones de consejos para hacer su vida mas facil.


¿alguna vez has encontrado a ti mismo añadiendo el mismo codigo para diferentes formas? & nbsp Bueno, ahora usted puede utilizar lo siguiente como una clase base para todas las formas.

=============== & nbsp & nbsp COMENZAR CODIGO, nbsp ======================
unidad de BaseForm

interfaz

utiliza SysUtils, Classes, Formas, Windows

tipo
& nbsp TBaseForm = class(TForm)
& nbsp protegido
& nbsp & nbsp & nbsp funcion IsModal(): Boolean
& nbsp & nbsp & nbsp procedimiento KeyDown(var Clave: Palabra Shift: TShiftState) reemplazar
& nbsp & nbsp & nbsp procedimiento ShowError(E: Exception)
& nbsp & nbsp & nbsp funcion MsgBox(Msg: string
& nbsp & nbsp & nbsp & nbsp & nbsp uType: Integer = MB_OK o MB_ICONSTOP): Integer sobrecarga
& nbsp & nbsp & nbsp funcion MsgBox(Msg, MsgCaption: string
& nbsp & nbsp & nbsp & nbsp & nbsp uType: Integer = MB_OK o MB_ICONSTOP): Integer sobrecarga
& nbsp final

aplicacion

utiliza los Controles

{ TPipeCallBaseForm }

la funcion de TBaseForm.MsgBox(Msg: string
& nbsp uType: Integer = MB_OK o MB_ICONSTOP): Integer
begin
& nbsp Resultado := MsgBox(Mensaje, Titulo, uType)
fin

procedimiento TBaseForm.KeyDown(var Clave: Palabra Shift: TShiftState)
begin
& nbsp heredado

& nbsp if ((IsModal) y (GetActiveWindow() = Asa) y (Clave = = VK_ESCAPE)) entonces
& nbsp & nbsp & nbsp ModalResult := mrCancel
fin

la funcion de TBaseForm.MsgBox(Msg, MsgCaption: string
& nbsp uType: Integer = MB_OK o MB_ICONSTOP): Integer
var
& nbsp FlashInfo: FLASHWINFO
begin
& nbsp si (GetForegroundWindow() <> Asa), a continuacion,
& nbsp empezar
& nbsp & nbsp & nbsp (* si la ventana actual no esta activo hacen de flash para avisar al usuario *)
& nbsp & nbsp & nbsp FillChar(FlashInfo, SizeOf(FLASHWINFO), 0)
& nbsp & nbsp & nbsp FlashInfo.cbSize := SizeOf(FLASHWINFO)
& nbsp & nbsp & nbsp FlashInfo.dwFlags := FLASHW_ALL o FLASHW_TIMERNOFG
& nbsp & nbsp & nbsp FlashInfo.hwnd := Identificador
& nbsp & nbsp & nbsp FlashWindowEx(FlashInfo)
& nbsp final

& nbsp Resultado := MessageBox(Mango, PChar(Msg), PChar(Titulo), uType)
fin

procedimiento TBaseForm.ShowError(E: Exception)
begin
& nbsp MsgBox(Format('Error: %s'#13#13 de Error de la Clase: %s', [E. Mensaje, E. ClassName]))
fin

la funcion de TBaseForm.IsModal: Boolean
begin
& nbsp Resultado := (fsModal en FormState)
fin

.

=============== & nbsp & nbsp CODIGO de FIN & nbsp ======================

Para utilizar esta base de formulario simple de agregar 'BaseForm' a la clausula uses y cambiar las formas de implementacion de:

& nbsp TfrmMyForm = class(TForm)

& nbsp TfrmMyForm = clase(TBaseForm)

Ahora, cada formulario tendra la capacidad de:

  • Pantalla un error en una manera consistente
  • Mostrar un MessageDlg mientras parpadea la ventana si no se activa.
  • Volver mrCancel si el usuario presiona la tecla ESC en un cuadro de dialogo modal.


Baseform clase

Baseform clase : Multi-millones de consejos para hacer su vida más fácil.
Recommander aux amis
  • gplus
  • pinterest

Comentario

Dejar un comentario

Clasificación