Français
Source/ Codesnippets

Bitmap Farbig Scrollbalken

 

KompilierenMarqueSéparation
Source wurde am 15.07.2007 aus der MMJ-Quellcodesammlung (Dietmar Horn) in die Babyklappe auf XProfan.Com abgelegt:
Scrollbalken (farbig und mit Bitmap)
#######################
Thema : Subclassing
#######################
Scrollbalken
#######################
Andreas Miethe
September 2003
#######################
 $H windows.ph
 $H messages.ph
DEF HiWord(1) And(&(1)>>16,$FFFF)
DEF LoWord(1) And(&(1),$FFFF)
set(FastMode,1)

PROC SetPattern

    Parameters wParam&,Tile&

    IF Brush&

        ~DeleteObject(Brush&)

    endif

    Brush& = ~CreatePatternBrush(Tile&)
    RETURN Brush&

endproc

PROC SetColor

    Parameters wParam&,col&

    IF Brush&

        ~DeleteObject(Brush&)

    endif

    Brush& = ~CreateSolidBrush(Col&)
    RETURN Brush&

endproc

Proc WindowProc

    Parameters Wnd&, Msg&, wParam&, lParam&

    If Msg& = ~WM_CTLCOLORSCROLLBAR

        If lParam& = hScrollBar&

            return SetPattern(wParam&,Tile&)

        endif

        If lParam& = vScrollBar&

            return SetColor(wParam&,RGB(0,255,0))

        endif

    Endif

    If Msg& = ~WM_HSCROLL

        If LoWord(wParam&) = ~SB_LINEUP

            hScrollPos& = hScrollPos& - 1

        EndIf

        If LoWord(wParam&) = ~SB_LINEDOWN

            hScrollPos& = hScrollPos& + 1

        EndIf

        If LoWord(wParam&) = ~SB_PAGEUP

            hScrollPos& = hScrollPos& - 100

        EndIf

        If LoWord(wParam&) = ~SB_PAGEDOWN

            hScrollPos& = hScrollPos& + 100

        EndIf

        If LoWord(wParam&) = ~SB_THUMBTRACK

            hScrollPos& = HiWord(wParam&)

        EndIf

        SetText %hwnd,Str$(GetScrollPos(lParam&))

    Endif

    If Msg& = ~WM_VSCROLL

        If LoWord(wParam&) = ~SB_LINEUP

            vScrollPos& = vScrollPos& - 1

        EndIf

        If LoWord(wParam&) = ~SB_LINEDOWN

            vScrollPos& = vScrollPos& + 1

        EndIf

        If LoWord(wParam&) = ~SB_PAGEUP

            vScrollPos& = vScrollPos& - 100

        EndIf

        If LoWord(wParam&) = ~SB_PAGEDOWN

            vScrollPos& = vScrollPos& + 100

        EndIf

        If LoWord(wParam&) = ~SB_THUMBTRACK

            vScrollPos& = HiWord(wParam&)

        EndIf

        SetText %hwnd,Str$(GetScrollPos(lParam&))

    Endif

Endif

alle anderen Meldungen an die Original-Prozedur weiterleiten
return ~CallWindowProc(OldProc&,Wnd&, Msg&, WParam&, LParam&)

endProc

Declare Ende&,OldProc&,hScrollBar&,vScrollBar&,hScrollPos&,vScrollPos&,Brush&
Declare Tile&,BackBrush&
SetTrueColor 1
WindowTitle ColorScroller
CLS ~GetSysColor(~COLOR_BTNFACE)
Tile& = ~LoadImage(0,Tile.bmp,~IMAGE_BITMAP,0,40,~LR_LOADFROMFILE)
hScrollBar& = Create(HScroll,%hwnd,,10,30,480,20)
vScrollBar& = Create(VScroll,%hwnd,,10,50,20,320)
SetScrollRange hScrollBar&,0,1000
SetScrollRange vScrollBar&,0,1000
hScrollPos& = 0
vScrollPos& = 0
Window-Prozedur ersetzen
OldProc& = ~SetWindowLong(%hwnd,~GWL_WNDPROC, ProcAddr(WindowProc,4))
clear ende&

While
> Ende& Waitinput Wend
 
16.07.2007  
 



Zum Quelltext


Topictitle, max. 100 marque.
 

Systemprofile:

ne...aucune Systemprofil angelegt. [anlegen]

XProfan:

 Posting  Font  Smilies  ▼ 

s'il te plaît s'inscrire um une Beitrag trop verfassen.
 

Options du sujet

2.578 Views

Untitledvor 0 min.
Thomas Freier04.02.2023
H.Brill11.05.2019
Sebald Grandjean09.02.2018
Julian Schmidt21.06.2011

Themeninformationen

cet Thema hat 1 participant:

unbekannt (1x)


Admins  |  AGB  |  Applications  |  Auteurs  |  Chat  |  protection des données  |  Télécharger  |  Entrance  |  Aider  |  Merchantportal  |  Empreinte  |  Mart  |  Interfaces  |  SDK  |  Services  |  Jeux  |  cherche  |  Support

un projet aller XProfaner, qui il y a!


Mon XProfan
Privé Nouvelles
Eigenes Ablageforum
Sujets-La liste de voeux
Eigene Posts
Eigene Sujets
Zwischenablage
Annuler
 Deutsch English Français Español Italia
Traductions

protection des données


Wir verwenden Cookies seulement comme Session-Cookies à cause de qui technischen Notwendigkeit et chez uns gibt es aucun Cookies de Drittanbietern.

si du ici sur unsere Webseite klickst ou bien navigierst, stimmst du unserer Erfassung de Informationen dans unseren Cookies sur XProfan.Net trop.

Weitere Informationen trop unseren Cookies et en supplément, comment du qui Kontrolle par-dessus behältst, findest du dans unserer nachfolgenden Datenschutzerklärung.


d'accordDatenschutzerklärung
je voudrais keinen Cookie