Owner Draw Trackbars

Just starting out? Need help? Post your questions and find answers here.
michaeled314
Enthusiast
Enthusiast
Posts: 340
Joined: Tue Apr 24, 2007 11:14 pm

Owner Draw Trackbars

Post by michaeled314 »

The MSDN Documentation says that Owner draw trackbars are possible, yet it the common control trackbar section, I cannot find anything that indicates how to create an owner draw trackbar. May somebody give me a simple code sample
RASHAD
PureBasic Expert
PureBasic Expert
Posts: 4946
Joined: Sun Apr 12, 2009 6:27 am

Re: Owner Draw Trackbars

Post by RASHAD »

Code: Select all

#TBS_AUTOTICKS        = $0001
#TBS_VERT             = $0002
#TBS_HORZ             = $0000
#TBS_TOP              = $0004
#TBS_BOTTOM           = $0000
#TBS_LEFT             = $0004
#TBS_RIGHT            = $0000
#TBS_BOTH             = $0008
#TBS_NOTICKS          = $0010
#TBS_ENABLESELRANGE   = $0020
#TBS_FIXEDLENGTH      = $0040
#TBS_NOTHUMB          = $0080
#TBS_TOOLTIPS         = $0100
#TBS_REVERSED         = $0200
#TBS_DOWNISLEFT       = $0400
#TBS_NOTIFYBEFOREMOVE = $0800
#TBS_TRANSPARENTBKGND = $1000

If OpenWindow(0, 0, 0, 320, 200, "TrackBarGadget", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
  TBhwnd = CreateWindowEx_(0,"msctls_trackbar32","",#WS_VISIBLE | #WS_CHILD | #TBS_ENABLESELRANGE| #TBS_TOOLTIPS |#TBS_FIXEDLENGTH,10,40,250,60,WindowID(0),200,0,0)
  SendMessage_(TBhwnd, #TBM_SETRANGE,1,5000<<16 - 5000)
  SendMessage_(TBhwnd, #TBM_SETTHUMBLENGTH,20,0)
  SetFocus_(TBhwnd)
Repeat
    Select WaitWindowEvent()
      
      Case #PB_Event_CloseWindow
        Quit = 1 
          
       Case #WM_LBUTTONDOWN
             GetCursorPos_ (@p.POINT) 
             ScreenToClient_ (WindowID(0), @p)
          If ChildWindowFromPoint_ (WindowID(0), p\y<< 32+p\x) = TBhwnd
            State = (p\x - 133)*10000/225 
              SendMessage_(TBhwnd,#TBM_SETPOS,1,State)
          EndIf

  EndSelect    
 Until Quit = 1
EndIf

Egypt my love
michaeled314
Enthusiast
Enthusiast
Posts: 340
Joined: Tue Apr 24, 2007 11:14 pm

Re: Owner Draw Trackbars

Post by michaeled314 »

Wow RASHAD.. not only did you just post an example, you also used stuff from my previous posts that I would have incorporated anyway... :mrgreen: :mrgreen: :mrgreen: Keep it going.. I guess the sky's the limit once you get the device context....
User avatar
netmaestro
PureBasic Bullfrog
PureBasic Bullfrog
Posts: 8451
Joined: Wed Jul 06, 2005 5:42 am
Location: Fort Nelson, BC, Canada

Re: Owner Draw Trackbars

Post by netmaestro »

My impression of the term "Owner Drawn" is different than customizing some sizes of components. The gadget will send WM_NOTIFY messages to its parent window with the notification code NM_CUSTOMDRAW, and you can respond to each drawing stage as you choose. I realize this isn't well documented and I'm sorry for that, but hang on a second, I don't work for Microsoft, so I'm not sorry for that, but here's a sample of ownerdrawing the trackbar:

Code: Select all

Prototype AlphaBlend(hdcDest,DestX,DestY,DestW,DestH,hdcSrc,SrcX,SrcY,SrcW,SrcH,BLENDFUNCTION)

msimg32 = OpenLibrary(#PB_Any, "msimg32.dll")
Global AlphaBlend_.AlphaBlend = GetFunction(msimg32, "AlphaBlend")

CreateImage(0, 1, 14)
StartDrawing(ImageOutput(0))
  Restore shaft
  For i=0 To 13
    Read.i color
    Plot(0,i, RGB(color+3,color,color))
  Next
StopDrawing()

Global hBrush_Channel = CreatePatternBrush_(ImageID(0))

LoadFont(0, "verdana", 12 )

#TBCD_TICS    = 1
#TBCD_THUMB   = 2
#TBCD_CHANNEL = 3

UsePNGImageDecoder()
Global imgThumb = CatchImage(#PB_Any, ?PicPak, 4278)

Procedure WinProc(hwnd, msg, wParam, lParam)
  result = #PB_ProcessPureBasicEvents
  Select msg
    Case #WM_NOTIFY
      *lpNotify.NMHDR=lParam
      Select *lpNotify\idFrom
        Case 0
          Select *lpNotify\code
            Case #NM_CUSTOMDRAW
              *lpDraw.NMCUSTOMDRAW = lParam 
              Select *lpDraw\dwDrawStage
                Case #CDDS_PREPAINT
                  ProcedureReturn #CDRF_NOTIFYITEMDRAW
                  
                Case #CDDS_ITEMPREPAINT
                  Select *lpDraw\dwItemSpec
                    Case #TBCD_CHANNEL
                      InflateRect_(*lpDraw\rc, 0, 4)
                      FillRect_(*lpDraw\hdc, *lpDraw\rc, hBrush_Channel)
                      ProcedureReturn #CDRF_SKIPDEFAULT
                      
                    Case #TBCD_THUMB
                      InflateRect_(*lpDraw\rc, 0, -4)
                      GetObject_(ImageID(imgThumb), SizeOf(BITMAP), bmpSrc.BITMAP)
                      hdcSrc = StartDrawing(ImageOutput(imgThumb))
                      AlphaBlend_(*lpDraw\hdc,*lpDraw\rc\left,*lpDraw\rc\top+4,bmpSrc\bmWidth,bmpSrc\bmHeight,hdcSrc,0,0,bmpSrc\bmWidth,bmpSrc\bmHeight,$1FF0000)
                      StopDrawing()
                      ProcedureReturn #CDRF_SKIPDEFAULT
                      
                    Case #TBCD_TICS
                      SelectObject_(*lpDraw\hdc, FontID(0))
                      SetBkMode_(*lpDraw\hdc, #TRANSPARENT)
                      SetTextColor_(*lpDraw\hdc, RGB(40,40,40))
                      TextOut_(*lpDraw\hdc, 16,  40, @"0", 1)
                      TextOut_(*lpDraw\hdc, 56,  40, @"1", 1)
                      TextOut_(*lpDraw\hdc, 98,  40, @"2", 1)
                      TextOut_(*lpDraw\hdc, 138, 40, @"3", 1)
                      TextOut_(*lpDraw\hdc, 178, 40, @"4", 1)
                      TextOut_(*lpDraw\hdc, 218, 40, @"5", 1)
                      ProcedureReturn #CDRF_SKIPDEFAULT
                      
                  EndSelect
              EndSelect
          EndSelect      
      EndSelect
  EndSelect
  ProcedureReturn result
  
EndProcedure

OpenWindow(0, 0, 0, 400, 200, "TrackBarGadget", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
SetWindowCallback(@WinProc())

TrackBarGadget(0, 60,  60, 250, 60, 0, 5, #PB_TrackBar_Ticks)
SetWindowLongPtr_(GadgetID(0), #GWL_STYLE, GetWindowLongPtr_(GadgetID(0), #GWL_STYLE) | #TBS_FIXEDLENGTH)
SendMessage_(GadgetID(0), #TBM_SETTHUMBLENGTH, 40, 0)
SetGadgetState(0, 3)

Repeat : Until WaitWindowEvent() = #PB_Event_CloseWindow

CloseLibrary(msimg32)
End

DataSection
  shaft:
  Data.i 231,172,158,115,170,250,245,110,125,200,179,191,224,242  
  
  PicPak:
  Data.q $0A1A0A0D474E5089,$524448490D000000,$1800000016000000,$0DBEFE0000000608,$594870090000004B,$0B0000130B000073,$0000189C9A000113
  Data.q $6850504343694F0A,$20706F68736F746F,$666F727020434349,$9DDA780000656C69,$F73D16E953546753,$4B9480884B42F4DE,$8B4252200815526F
  Data.q $1009212A26911480,$C15115D9A121884A,$88A0C81B04454511,$2C51158C808E8E03,$A221E407D80A8A0C,$E1FBCA8A88A3838E,$CDE6F7BCD66BA37B
  Data.q $9DF3ACE73ED7B5FE,$48960C08C007CFB3,$1E42A90C80355133,$E4E1C6C4C783E011,$100070240A81402E,$0123FD732164B308,$C0222B3C3C7EF800
  Data.q $080BD3780100BE07,$871C30C09B4DC000,$80015C9942EA0FFF,$084B389174C00184,$A6428E7A40001480,$26989D8001464000,$63CB600004A00053
  Data.q $2760002D5000E362,$99F89D8000D3E67F,$011521945B00017B,$44886513200091A0,$8A56CFAC003B6800,$4B66140030580045,$4930002DD80039C4
  Data.q $C000B7B000486657,$000C0800B20B10CE,$7B04002985885130,$8400782323C86000,$F13C57F246140099,$7800002AE710AE2B,$81453924B93CB299
  Data.q $2E575707712D085B,$36142B1749CE281E,$79C22E409A610261,$F3E00F3481321999,$E0111591A00000CC,$CEAE0ECE78FDF383,$EA2D5F0EB68E36CE
  Data.q $FEE3626222FF06BF,$E100004070ABCFE5,$1AB32F2CFED17E74,$25A2FE6D80063B80,$F775A00B5E6804EE,$A000B5400FB2668B,$3C7EF870F357DAE9
  Data.q $E5D9D9B990A1453C,$615B42C44AD8E4E4,$C05FC267FE7D57CA,$F7FC3C7EF96CFD57,$5D328124E2BEE0F5,$F4CCC2E0F8044781,$62840992CF1CA54C
  Data.q $FF0BB7FC478FE6DC,$B96249C422D31DFC,$8E711251E3142A58,$8922A532F38C9A44,$64FFD225C5299242,$35DF3E03FB2CDFE2,$2D917B013E6AB000
  Data.q $10274BF603635DA8,$F20000F7E2C07458,$80030828D4C16FBB,$3FEFFF77CFE18368,$4966800025A047FD,$2E24445E00007192,$000008C73FB3CA54
  Data.q $F41B41B02A81A044,$05C11C06C02C18C1,$42843660FC0BC1DC,$640A421042C2C424,$4282AC2960721C80,$2F602A1DB0CD8628,$866851C0341D40D4
  Data.q $0EB855C22E0E7093,$C19E0861FA0F703D,$08C841040981BC28,$8A620188DA216113,$F8859917088E2358,$20248B120448C121,$35914B22511488C9
  Data.q $485520548A523148,$5C873902723DF21D,$823200C83B91BA46,$B281943147BC86FC,$A8B943B50CD43D51,$64D00BA246841A37,$D09BA0168F9A3174
  Data.q $E7A1368C3D1AB472,$433E8FDA0F68ABD0,$C4330718E8C030C7,$38B142C3C62E306C,$AC22B1CB6393092C,$03AC56B01AC6AB0C,$0477B1CF63F589BB
  Data.q $77043609C0458112,$4C5848411E612042,$241C20A848D84E58,$8403093709DA1134,$B44BA8932227C251,$326218C4F911BA26,$12D6232C48588731
  Data.q $C443887B102F138F,$B927324389122437,$12D254A4B1490290,$2CE923526ED246D2,$C993231A48349BA9,$2C943907B26B64DA,$C3E49DE485C82B20
  Data.q $5BF221E41BE433E4,$53F8A47140629D0A,$E5194A6ACA5228E2,$32986506E534E510,$A1A8DD529AA35541,$A1AD425A8F351154,$3413A88751AF52B6
  Data.q $4B491683CD399A75,$17681AD395A2ADA5,$11BA74E8AF69F768,$D257D0974E1E95DD,$F403E897E847E9CB,$88C78315860D0C77,$671807189B192867
  Data.q $19A64C98AF187719,$31373054C7198BD3,$556F990F99E798EB,$CA91157C2AB62A58,$2A1B9526954A950A,$AADEAAA6AAA9542F,$A98F54CB55F3550B
  Data.q $53335546AE7D535E,$AA55AB96D409A9E3,$A967531B53EB509D,$546FA867AA87A83B,$590689FD597EA43F,$A051A4434FC34CC3,$630B20C6BCE35FB1
  Data.q $AB0D6B212C78B319,$CDB126C435817586,$1DFD98BB2A767CD9,$4339A1A9AA3D8BBB,$94F352B357334A33,$9CF87198E3073F66,$F397A728E7094E74
  Data.q $29E229EF14DE8A7E,$5C6531B94C34A61B,$48AB58969796AA6B,$AE36BDEB47AB51AB,$59BB45BDA69DA7ED,$5C274AC7410E81FB,$E79D05CE8F674727
  Data.q $16A70AA7DD53D953,$6BAA2EAEF53A3D4D,$6EBF7744BBA11BA5,$9E805EBE9E98EEA7,$FAE7BD79DEA76F4C,$FA6DFD54FD2F7D1C,$0CB306580C47F5A7
  Data.q $C53C18CE0CDB0624,$DBC72F1D3C6F7135,$A54340C35D4351F1,$B99184E197619561,$0F468D46D5A33CD1,$6DE324E35CC6698C,$21260626A3C66DC6
  Data.q $529AEE4DEA4D4B26,$3B4C3BA629A6B94D,$D6CDA2CDCCCDC74C,$E732D7313D9B3599,$60B7DF9BD79BE79B,$B8B6A8B62C5A785A,$EE59A65AE4B24965
  Data.q $A559395A856EBCB6,$9DAD46B35D5A5558,$11A7BBADBBD625AD,$D69EAB4E934EB9A7,$A9B6C9B6F1B0C367,$AEDB06D8E5B019B7,$176267617DB66DB6
  Data.q $BD93EEC3AEC5B767,$073DFD8D7DBA7D93,$1D5A1DAB0ED9870D,$3A563A1472B4737E,$C57D3FEE9CCE9ADE,$10CF58672FE996F4,$29CB13B6E333D8CF
  Data.q $6747D39B539D69C4,$8B88F38373B96717,$2E3E972ECB824B89,$4AE4BDC8DDC61B9B,$F5D27AE15D71F574,$DBA8EDC29BB39B9D,$DC87EE69EE36EEAF
  Data.q $33599E299F34CC9F,$E551E043C8C3D073,$DF6B30959F0B3FD1,$B567814F434F7EAC,$AD57912F632F23E7,$61F7AA77A5B7B0D7,$E39F723EF63E17EF
  Data.q $59DE32DE373CE33E,$CBB7C8B7C037CC5F,$43DF855F9E6FC34F,$D1FF7AFF64FF237F,$890367012580A700,$7AF8FB025B814181,$65DB3A3F8EBF217C
  Data.q $B9A08C41EDD9B2F6,$E582AD828F411541,$AD90ECC86821ADC1,$69CE91CE98E7F721,$07D0D6E87E50850E,$270C7EC38B61E661,$708E3F8657858785
  Data.q $77359731D11A5888,$44FA44DF7343DCD1,$394F31679BDE4496,$2EAA3E2A354A2DAF,$3FBA34BA37DA3C6A,$9D58D5CC59662EC6,$2A2E391C4B6C4958
  Data.q $EDFCDFBE6C6E36AE,$7BE30BE29DE287F3,$A179705DC82F9817,$2EA916A785F4C2CE,$4E884C40963A2C12,$16A82A1041F09438,$0A8E257713F2258C
  Data.q $D12F2267C21DC279,$1E2A5C43D888D136,$EC927A4D2A48F24E,$A533C5247935BC91,$BC90A92784B9E52C,$169E3A9BDD4C0D4C,$BD3A3D326D20769A
  Data.q $AA42719091928331,$E667EA67B6934D21,$FEB28565ACCB7666,$07951E2FB78B6EC5,$2D5905AC90B36BC9,$285A54E8A642B60A,$66576567B2072AD7
  Data.q $9EAB9639CA89CDBF,$90DBCAB3CCEDCD2B,$C212EDFF9FEF9C37,$574B86A5B692E112,$396AACBDE6581D2D,$15E30ADB79713CB2,$B83CAC0656862B05
  Data.q $EDAB4FD56D2AB68A,$4D7A26BD7EAE9757,$B5C182CAC15E816B,$85E50A550BEB6B01,$584F5DEDD7DCEB7D,$9D86FA61B5DF592F,$DB14AE8A89153E1B
  Data.q $78DC28D87F159717,$DC99BFCA6F871BE5,$CF64B9C4ABA9B494,$9E2DDEE6E966D266,$0E97E697AA960E5B,$56DF0DB4DAD90D6E,$972FDB45F6F5EDB4
  Data.q $B943B683BBDB28CD,$C9A765BCB83CBFA3,$F454A4543F3BCDCE,$B5DDD2EE3654FA54,$7B1BEED16EF8D761,$BC5BDBD5EC34F6BC,$0155DBBEC93EFDF7
  Data.q $49FB65D566D54D55,$E9AA89AE3FF7B3FB,$6D4EAD5D6DFB96F8,$07FD03D203C7ED71,$1DD5D4B9D7B60E23,$EB2BD68F52543DD2,$EF9DFEBE1FC70E47
  Data.q $9C8D550D360D2D77,$E9E479447023E2C6,$DA3A0D1EF7DF09F7,$1FD307E1AC7B8C76,$9A426A2F1D671D76,$5BFB9A539B469AF2,$D6D13ECC4FBA5B62
  Data.q $0F1FDB47FC7ADEEA,$54F34A79593C349C,$6793D382E9DA69C9,$7E7D9D959D8CCFF2,$7BB6A2DB60DCF92E,$EF6F0F6ADFCE63E7,$8BFF45D2E17410BA
  Data.q $B8F25CCE3BBC3BE7,$B85713E5DBB2F274,$74EA6D5F3AAF9A57,$BBC74FD393FE3CEA,$B96B5CB9AE9ABB9C,$E9F7667BB5BD7AEE,$79BDF4DDCE379E1B
  Data.q $3D399ED5D6FF16F1,$F7C5F76F7AF3BDDD,$FD27727EDD16DFF5,$ADEE2777D9BBCBCE,$41ED40F45FBC4FBC,$FE5B3FD587DD43D9,$77C06A7FDCEFD8DC
  Data.q $8506F747DCD1F3A0,$430F8FF591FECF83,$860D86CB8F998F05,$3FE239393E389EEB,$64CF43A7FCE9FD72,$CBFEA2FE179E26CF,$EBD5F87E2F1617AE
  Data.q $F297A1D198D1CED7,$EAFDA57C6DBF9397,$C6C2C6DBAF19EBC0,$F45E313378C9BE1E,$1D77DC77C1EDFB56,$207CE44F0FDFA3EF,$53F5B1F968FF287F
  Data.q $FF93931993FBA7D0,$2D3363FCF3980304,$4D416704000000DB,$51FB7C8EB1000041,$5248632000000093,$800000257A00004D,$800000FFF9000083
  Data.q $EA000030750000E9,$170000983A000060,$05000046C55F926F,$6CDA7854414449D1,$7FC619D794507B95,$A82EC0BD857605DF,$A86D52F1D7414010
  Data.q $2982B01D531B5062,$134CB78B55A3A331,$D324CE864D3AD12D,$13275B50D2625298,$7104AC1898EDDE9D,$356F1160A19104D2,$2EB2AC2B46A9121A
  Data.q $DDD95ECB22CBB2CB,$FEF0D4332E1FEBEF,$E73CE79CE779DE73,$36D5A6908E79DF79,$EF253D38A375B95C,$31649233BBD6D7F0,$26A0286F527E9279
  Data.q $C18C94D33A7D4746,$E92244288A4F01C1,$0E1F445091DEE629,$9A9747B3060C32FA,$7F2CBEBF77F772E4,$00203CF4287769E1,$395AE572B45C802A
  Data.q $01236A5628DE8B41,$E0678B56BD156102,$61818354905F311E,$5D3CA43D87063DDB,$D27E8E6C03DF70C0,$293B474D67320675,$6C689ED72B95A289
  Data.q $0451518186034804,$6274D4E6400AAA3F,$73B2F22C96390091,$359326B3B231AA89,$87273B2110889323,$696140B248D969DC,$110C58B13306A911
  Data.q $20800C01C80580FC,$F479389AA635A02A,$D87339BC93970E28,$160B3EEFB389595F,$FAFCDC1BF540E42D,$0552F7D90BF9F926,$E68A7C2E2CADBBB7
  Data.q $B25264DCF4EE5A86,$903A6072C0B4050E,$18345228A2B2080C,$0BF2FF5C79DCE664,$8BE3677379070ECC,$02EE6588D33E6945,$51593FDB474C9234
  Data.q $9E9F339462688ABA,$E08D32D0A3AC9B42,$7026602451451468,$522289288200D017,$74435DD88A240242,$E9C0F13468C05C75,$7A34C64C73F3ABA0
  Data.q $D218A60EECD86CFA,$2373E83CEBEFFAB8,$4141541E1DD889AB,$281AC6134CE24512,$B5D391A314955546,$F3D94CF077EFE31F,$D63EDEDE18E0F89C
  Data.q $78A18E0FB1C1DE6D,$5B7FAA52EEFE2C03,$BB294D6AB2AC3E83,$46F4E882FB23762B,$A3C44F8D147A8FA2,$54528E8D185510A9,$1FE824EC2F0BC252
  Data.q $CEFE27E394A4B8A1,$3FCD5D299E56F6C5,$BE5E51D7D7F03A5A,$579D4B88F89EBF93,$81BA7CFE7EC6FFD8,$FFFDEA3E20EFC29A,$DF6EB71202A0A885
  Data.q $487A1F60F7BB67E0,$36C56EB67B13534B,$B73B1524F6B6A5E8,$D9F7A7F4399B3060,$9FDEC2A8C13B63B5,$85514212B2E6C2BF,$2CA240AB018F1847
  Data.q $140BB5C2E7EC3431,$BB685319A99F7E97,$945829DB1DF28970,$9CADBCD88743A1CF,$4B20EF7EA80BF2A7,$D9FB53D64E63160A,$2C82C01334692467
  Data.q $4B85258850A1020B,$61B0B536B41DBB71,$CF9A670F1E3C06E3,$50B163932F5D93F0,$AC87B3DBECDBD6FD,$5EFB14F4FC9CE9BC,$0B974194ACB4A4AD
  Data.q $D1A34018C9BE1059,$67CFCFE659DCEE72,$AC84723E1CD9CCD6,$F55550E666E469DC,$1B69B2D873B3B20B,$FF634F4E638F6AC7,$F6B01FE8F4716F6B
  Data.q $5544289868D1A0F6,$B5B29AC8791A1955,$AFCA8D3A2EF7FCF4,$6741FF5B9DC97EAA,$0EEC3823E1C8E448,$960D6EFBBCBD83DC,$BCDF9A7B3C69B359
  Data.q $72E9C7AED6EB36F3,$EAA4082C6913AAA1,$62EB5FAE36AD588D,$76BC3E23BC72A6E3,$81CB80C15BDF4517,$8709AB55EAC231D7,$32E97CB0773474BD
  Data.q $C98F5758D2E6732C,$428A3214813A8E9C,$60F073CFDB2F804C,$7CBC06045535550D,$6FD8158BC54750D8,$1E0EEFC4D4D75377,$CB5E3B7F175AF3A0
  Data.q $94FF2FABC3BDEFFB,$514146C7093A37EB,$AC4305089258D026,$2588FF1FDEC8DF2F,$2F149DC5EDB216F3,$BF5654B919FCCE59,$B6018304A5F5FACE
  Data.q $CD84BCAF6BC4DF6E,$B4B6CE56B9D34BDA,$258137D248220B22,$BC09AA230E1C2041,$FCF83BF4EE6BF559,$48617F8FFEFC17D2,$566F039E7AD8B951
  Data.q $D8F73DEC6CE67D33,$D2B88A2B659CA1B2,$9D3B71CB5B8D917E,$25312AAAA1491348,$3F3D7D54E7A0D68A,$9FC7CFCFBF0EB0DC,$6347F00FC95CF1D4
  Data.q $1196CF3585ABFDB4,$ABC53B476AE24C4D,$92B6ED637776B18A,$2665964F3713CB20,$5F410EEB7FB8D29B,$531B6EEE83AB5E98,$D5D57CC33CB82C33
  Data.q $E51FE4334F4582C9,$F0C398CD6636F9F2,$74A6CC16E6E68050,$23CC665964162CF2,$3BEA4A4A608426E2,$6F65FB5CF0FF5F5E,$21EDFAFB27E4FA46
  Data.q $6E0B2525D6123FBF,$A1F06C520B2C80CF,$8C94F2601CE03833,$6E3C8716C89E27C4,$A4FDBE0B42DBEE7A,$76BBBDA65BE0B4B4,$A02BE0068102790F
  Data.q $2CF0064E263BB80D,$1D5D78B103300F30,$FB8E2AF895CF1063,$B815701F7EF8C4DF,$2204C80E80C8F40C,$0636071D41BE3380,$14802A03C601C428
  Data.q $211404103F40DD5F,$0FF8BAD671A9CE6E,$F123AC63CA983630,$83010815534C7C5C,$EE71A407637C0BF1,$58F0B904C43B8D2F,$FF2957F1A3EC718D
  Data.q $DB3D4478EAF0001B,$454900000000D7CD
  Data.b $4E,$44,$AE,$42,$60,$82
  PicPakend:
EndDataSection
Last edited by netmaestro on Fri Nov 11, 2011 10:01 pm, edited 1 time in total.
BERESHEIT
RASHAD
PureBasic Expert
PureBasic Expert
Posts: 4946
Joined: Sun Apr 12, 2009 6:27 am

Re: Owner Draw Trackbars

Post by RASHAD »

It is beautiful no doubt
But it is Custom Drawn NM not Owner Drawn
Owner Drawn when the control has Owner Drawn Style Flag ( I guess )
As per ComboBox,ListIcon and so on
Not our case of course

I guessed he wanted API Trackbar Gadget because the forum full of Custom Drawn samples
By Sparkie,FB,BongMong,..... and more
Egypt my love
User avatar
netmaestro
PureBasic Bullfrog
PureBasic Bullfrog
Posts: 8451
Joined: Wed Jul 06, 2005 5:42 am
Location: Fort Nelson, BC, Canada

Re: Owner Draw Trackbars

Post by netmaestro »

Agreed, your solution makes my feeble attempt look like a waste of effort. Thanks for your code, I appreciate the lesson :mrgreen:
BERESHEIT
RASHAD
PureBasic Expert
PureBasic Expert
Posts: 4946
Joined: Sun Apr 12, 2009 6:27 am

Re: Owner Draw Trackbars

Post by RASHAD »

C'mon NM
What lesson?
Beside no waste, your code is a very good lesson for us
For who wants to learn
Thanks
Egypt my love
User avatar
electrochrisso
Addict
Addict
Posts: 989
Joined: Mon May 14, 2007 2:13 am
Location: Darling River

Re: Owner Draw Trackbars

Post by electrochrisso »

Both examples are useful to me. :)
Thanks guys.
PureBasic! Purely the best 8)
Post Reply