Deutsch
Forum

OwnerDraw Button

 

Detlef
Jagolski
Hallo Community!

Ich hab da schon einiges probiert , Button mit OWNERDRAW.
Mir fehlt aber leider eine Einstellmöglichkeit, wenn ich mit der Maus über den Button fahre sollte ich wieder etwas neues Zeichnen können.

Leider sind aber nur folgende Möglichkeiten vorhanden:

ODS_CHECKED
ODS_COMBOBOXEDIT
ODS_DEFAULT
ODS_DISABLED
ODS_FOCUS
ODS_GRAYED
ODS_SELECTED
KompilierenMarkierenSeparieren
Proc WinProc

    Parameters Wnd&, Message&, wParam&, lParam&

    If Message& = ~WM_MEASUREITEM

    EndIf

    If Message& = ~WM_DRAWITEM

        lpdis# = lParam&

        If Long(lpdis#,0) = ~ODT_BUTTON

            Long Rect#,0   = Long(lpdis#,28)
            Long Rect#,4   = Long(lpdis#,32)
            Long Rect#,8   = Long(lpdis#,36)
            Long Rect#,12  = Long(lpdis#,40)
            ButtonText$ = GetText$(lpdis#.hwndItem&)

            If Long(lParam&,12) & ~ODA_DRAWENTIRE

                HDCGradientFill (Long(Rect#,0),Long(Rect#,4),Long(Rect#,8),Long(Rect#,12),Color_FirstIconBack1&,Color_EndIconBack1&,128,1,lpdis#.HDC&)

            ElseIf Long(lParam&,12) & ~ODA_FOCUS

                HDCGradientFill (Long(Rect#,0),Long(Rect#,4),Long(Rect#,8),Long(Rect#,12),Color_FirstIconBack2&,Color_EndIconBack2&,128,1,lpdis#.HDC&)

            ElseIf Long(lParam&,12) & ~ODA_SELECT

                If Long(lParam&,16) & ~ODS_SELECTED

                    HDCGradientFill (Long(Rect#,0),Long(Rect#,4),Long(Rect#,8),Long(Rect#,12),Color_FirstIconBack3&,Color_EndIconBack3&,128,1,lpdis#.HDC&)

                Else

                    HDCGradientFill (Long(Rect#,0),Long(Rect#,4),Long(Rect#,8),Long(Rect#,12),Color_FirstIconBack1&,Color_EndIconBack1&,128,1,lpdis#.HDC&)

                EndIf

            EndIf

            ~SetBkMode(lpdis#.HDC&,~TRANSPARENT)
            ~DrawText(lpdis#.HDC&,Addr(ButtonText$),Len(ButtonText$),Rect#,~DT_CENTER | ~DT_VCENTER | ~DT_SINGLELINE)

        EndIf

    EndIf

    Return ~CallWindowProc(OldWindowsProc&, Wnd&, Message&, wParam&, lParam&)

EndProc


Grüße
Detlef

13 kB
Hochgeladen:16.06.2007
Ladeanzahl101
Herunterladen
 
XProfan X4, PRFellow, Profan2Cpp - Version 2.0c-pre5, Windows 11
16.06.2007  
 



Gibt auch

ODS_HOTLIGHT = { $40 | 64 }
ODS_INACTIVE = { $80 | 128 }
 
16.06.2007  
 



Antworten


Thementitel, max. 100 Zeichen.
 

Systemprofile:

Kein Systemprofil angelegt. [anlegen]

XProfan:

 Beitrag  Schrift  Smilies  ▼ 

Bitte anmelden um einen Beitrag zu verfassen.
 

Themenoptionen

594 Betrachtungen

Unbenanntvor 0 min.
H.Brill10.01.2019
Peter Max Müller13.11.2017
Joerg24.06.2016
Ernst11.01.2015
Mehr...

Themeninformationen

Dieses Thema hat 2 Teilnehmer:

iF (1x)
Detlef Jagolski (1x)


Admins  |  AGB  |  Anwendungen  |  Autoren  |  Chat  |  Datenschutz  |  Download  |  Eingangshalle  |  Hilfe  |  Händlerportal  |  Impressum  |  Mart  |  Schnittstellen  |  SDK  |  Services  |  Spiele  |  Suche  |  Support

Ein Projekt aller XProfaner, die es gibt!


Mein XProfan
Private Nachrichten
Eigenes Ablageforum
Themen-Merkliste
Eigene Beiträge
Eigene Themen
Zwischenablage
Abmelden
 Deutsch English Français Español Italia
Übersetzungen

Datenschutz


Wir verwenden Cookies nur als Session-Cookies wegen der technischen Notwendigkeit und bei uns gibt es keine Cookies von Drittanbietern.

Wenn du hier auf unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung von Informationen in unseren Cookies auf XProfan.Net zu.

Weitere Informationen zu unseren Cookies und dazu, wie du die Kontrolle darüber behältst, findest du in unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Ich möchte keinen Cookie