73 lines
2.8 KiB
C++
73 lines
2.8 KiB
C++
//---------------------------------------------------------------------------
|
|
#ifndef DigitNumH
|
|
#define DigitNumH
|
|
//---------------------------------------------------------------------------
|
|
#include <SysUtils.hpp>
|
|
#include <Controls.hpp>
|
|
#include <Classes.hpp>
|
|
#include <Forms.hpp>
|
|
//---------------------------------------------------------------------------
|
|
class PACKAGE TDigitNum : public TGraphicControl
|
|
{
|
|
private:
|
|
TBorderStyle FBorderStyle; // Con borde o sin borde
|
|
TBrush *FBrush; // Para el relleno del fondo
|
|
TColor cLED_ON; // Color de la LED encendida y
|
|
TColor cLED_OFF; // apagada
|
|
TColor cLED_BRDon; // Color para el borde
|
|
TColor cLED_BRDoff; // Color para el borde
|
|
|
|
|
|
|
|
int FValor; // Valor inicial a mostrar
|
|
int FLen; // Número de digitos a mostrar
|
|
bool vCerosIzq;
|
|
|
|
// Evento OnChange, dirigido a la siguiente función:
|
|
void __fastcall CambioAtributo( TObject * Sender );
|
|
|
|
// Dibujo del letrero digital
|
|
void __fastcall DibujaLD( void );
|
|
void __fastcall DibujaDigito( short int Digito, short int AnchoDigit, short int PosInicial );
|
|
|
|
protected:
|
|
// Redefinimos el método Paint, que será llamado cada vez
|
|
// que sea necesario redibujar el componente.
|
|
void __fastcall Paint();
|
|
public:
|
|
void __fastcall SetNumDigit( int NuevoValor );
|
|
void __fastcall SetBrush( TBrush *NuevoValor );
|
|
void __fastcall SetBorderStyle( TBorderStyle NuevoValor );
|
|
|
|
void __fastcall SetLedOn( TColor NuevoValor );
|
|
void __fastcall SetLedOff( TColor NuevoValor );
|
|
void __fastcall SetLedBrdOn( TColor NuevoValor );
|
|
void __fastcall SetLedBrdOff( TColor NuevoValor );
|
|
void __fastcall SetCerosIzq( bool NuevoValor );
|
|
|
|
|
|
// Cambia la cadena a mostrar: "at RunTime"
|
|
void __fastcall SetCadena( int NuevaCadena );
|
|
|
|
__fastcall TDigitNum(TComponent* Owner);
|
|
__fastcall ~TDigitNum();
|
|
__published:
|
|
__property TBorderStyle BorderStyle = { read = FBorderStyle, write = SetBorderStyle, default=bsSingle };
|
|
__property TBrush *Brush = { read = FBrush, write = SetBrush };
|
|
__property TColor LED_ON = { read = cLED_ON, write = SetLedOn, default = clRed };
|
|
__property TColor LED_OFF = { read = cLED_OFF, write = SetLedOff, default = clBtnFace };
|
|
__property TColor LED_BRDon = { read = cLED_BRDon, write = SetLedBrdOn, default = clBlack };
|
|
__property TColor LED_BRDoff = { read = cLED_BRDoff, write = SetLedBrdOff, default = clGray };
|
|
|
|
__property Left ;
|
|
__property Top ;
|
|
__property Width ;
|
|
__property Height ;
|
|
|
|
__property bool CerosIzq = { read = vCerosIzq, write = SetCerosIzq, default = false };
|
|
__property int Value = { read = FValor, write = SetCadena };
|
|
__property int MaxLength = { read = FLen , write = SetNumDigit , default = 4 };
|
|
};
|
|
//---------------------------------------------------------------------------
|
|
#endif
|