Italia
Foro

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 circa 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
Downloadcounter101
Download
 
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  
 



Answer


Topictitle, max. 100 characters.
 

Systemprofile:

Kein Systemprofil angelegt. [anlegen]

XProfan:

 Posting  Font  Smilies  ▼ 

Bitte anmelden um einen Beitrag zu verfassen.
 

Topic-Options

590 Views

Untitledvor 0 min.
H.Brill10.01.2019
Peter Max Müller13.11.2017
Joerg24.06.2016
Ernst11.01.2015
Di più...

Themeninformationen

Dieses Thema hat 2 subscriber:

iF (1x)
Detlef Jagolski (1x)


Admins  |  AGB  |  Applications  |  Autori  |  Chat  |  Informativa sulla privacy  |  Download  |  Entrance  |  Aiuto  |  Merchantportal  |  Impronta  |  Mart  |  Interfaces  |  SDK  |  Services  |  Giochi  |  Cerca  |  Support

Ein Projekt aller XProfaner, die es gibt!


Il mio XProfan
Private Notizie
Eigenes Ablageforum
Argomenti-Merkliste
Eigene Beiträge
Eigene Argomenti
Zwischenablage
Annullare
 Deutsch English Français Español Italia
Traduzioni

Informativa sulla privacy


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