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
By Consejos Y Trucos
Baseform clase : Multi-millones de consejos para hacer su vida más fácil.