Supportnet / Forum / Anwendungen(Java,C++...)
Benutzerdefinierte Schalter mit C++-Builder
Frage
Hallo, kann mir jemand da draussen helfen?
ich benutzte den C++-Builder Version 4.0 und möchte eigene Schalter
mit den Ownerdraw-Stil machen. Leider denkt der C++-Builder nicht daran,
meine eigenen Zeichen-Methoden aufzurufen.
Ich habe es etwa so gemacht, wie im Quelltext der VCL der Klasse TBitBtn.
Kann mir jemand einen Tipp geben?
Danke.
/*
class TMyButton : public TButton
{
private:
protected:
BEGIN_MESSAGE_MAP
VCL_MESSAGE_HANDLER(CN_MEASUREITEM, TWMMeasureItem, CNMeasureItem)
VCL_MESSAGE_HANDLER(CN_DRAWITEM, TWMDrawItem, CNDrawItem)
END_MESSAGE_MAP( TButton )
// ;
virtual void __fastcall CreateParams(Controls::TCreateParams &Params)
{
TButton::CreateParams( Params );
// ;
Params.Style |= BS_OWNERDRAW;
}
// ;
virtual void __fastcall CNMeasureItem( TWMMeasureItem &Message )
{ // wird leider nicht aufgerufen
ShowMessage( "CNMeasureItem()" );
}
// ;
virtual void __fastcall CNDrawItem( TWMDrawItem &Message)
{ // wird leider nicht aufgerufen
ShowMessage( "CNDrawItem()" );
}
public:
__fastcall TMyButton(TComponent* Owner);
__fastcall ~TMyButton();
__published:
};
*/

