59 lines
2.1 KiB
C++
59 lines
2.1 KiB
C++
//---------------------------------------------------------------------------
|
|
#ifndef ActImgH
|
|
#define ActImgH
|
|
//---------------------------------------------------------------------------
|
|
#include <vcl\SysUtils.hpp>
|
|
#include <vcl\Controls.hpp>
|
|
#include <vcl\Classes.hpp>
|
|
#include <vcl\Forms.hpp>
|
|
#include <vcl\ExtCtrls.hpp>
|
|
|
|
//---------------------------------------------------------------------------
|
|
class PACKAGE TActiveImage : // public TGraphicControl
|
|
public TButton
|
|
{
|
|
private:
|
|
bool mcaptured;
|
|
void __fastcall MouseMove( Classes::TShiftState Shift, int X, int Y);
|
|
|
|
TCanvas * FGlyph; // Para dibujar
|
|
// Mensaje de Windows solicitando el tamaño del control
|
|
void __fastcall CNMeasureItem(TWMMeasureItem& Mensaje);
|
|
// Mensaje de Windows solicitando que el control sea dibujado
|
|
void __fastcall CNDrawItem(TWMDrawItem& Mensaje);
|
|
BEGIN_MESSAGE_MAP
|
|
MESSAGE_HANDLER(CN_MEASUREITEM, TWMMeasureItem, CNMeasureItem);
|
|
MESSAGE_HANDLER(CN_DRAWITEM, TWMDrawItem, CNDrawItem);
|
|
END_MESSAGE_MAP(TButton);
|
|
|
|
protected:
|
|
// Parámetros para la creación del control
|
|
void __fastcall CreateParams(TCreateParams &Params);
|
|
// Cambio del estado del botón
|
|
void __fastcall SetButtonStyle(bool ADefault);
|
|
|
|
void __fastcall SetGlyphOver( Graphics::TPicture *val );
|
|
void __fastcall SetGlyphPress( Graphics::TPicture *val );
|
|
void __fastcall SetGlyphNormal( Graphics::TPicture *val );
|
|
|
|
bool vAutoSize;
|
|
void __fastcall SetAutoSize( bool val );
|
|
|
|
void __fastcall Click( void );
|
|
|
|
|
|
public:
|
|
Graphics::TPicture *GlyphOver,*GlyphNormal, *GlyphPress;
|
|
|
|
__fastcall TActiveImage(TComponent* Owner);
|
|
__fastcall ~TActiveImage();
|
|
|
|
__published:
|
|
__property Graphics::TPicture *Picture_Normal={read=GlyphNormal, write=SetGlyphNormal};
|
|
__property Graphics::TPicture *Picture_Over={read=GlyphOver, write=SetGlyphOver};
|
|
__property Graphics::TPicture *Picture_Press={read=GlyphPress, write=SetGlyphPress};
|
|
__property bool AutoSize={read=vAutoSize, write=SetAutoSize, default=false };
|
|
};
|
|
//---------------------------------------------------------------------------
|
|
#endif
|