ButtongGadget with Text + Icon ?
ButtongGadget with Text + Icon ?
I dont really know if its still a part of purebasic or not! However, i cant find anything about this on the help nor on forum search! Is there any way to create ButtonGadgets including a small icon to it? This would be really nice!
If this feature isnt implented yet, it would be nice to have for future versions and for all OS. thx
If this feature isnt implented yet, it would be nice to have for future versions and for all OS. thx
Last edited by va!n on Thu Mar 16, 2006 3:53 am, edited 1 time in total.
va!n aka Thorsten
Intel i7-980X Extreme Edition, 12 GB DDR3, Radeon 5870 2GB, Windows7 x64,
Intel i7-980X Extreme Edition, 12 GB DDR3, Radeon 5870 2GB, Windows7 x64,
@Fangbeast:
Sorry, maybe you misunderstand me!? I want to have a normal ButtonGadget - also with normal text and adding to this button only i small icon - and not an image on the complete button
Sorry, maybe you misunderstand me!? I want to have a normal ButtonGadget - also with normal text and adding to this button only i small icon - and not an image on the complete button

Code: Select all
for example it could look like this...
+-------------------+
| (icon) AnyText |
+-------------------+
va!n aka Thorsten
Intel i7-980X Extreme Edition, 12 GB DDR3, Radeon 5870 2GB, Windows7 x64,
Intel i7-980X Extreme Edition, 12 GB DDR3, Radeon 5870 2GB, Windows7 x64,
Room for improvement but it's a start. 

Code: Select all
;/=============================================================
;/ Code : Button with image and text
;/ Author : Sparkie
;/ Start Date: 03/15/06
;/ PB Version: PB 4.00 Beta6
;/ OS Support: Windows 98/ME/NT/2000/XP/Server 2003
;/=============================================================
;/===============================================
;/ Procedure - Create icon/text ButtonImageGadget
;/===============================================
Procedure ButtonIconGadget(num, x, y, w, h, text$, imageId, icoW, icoH)
buttonBack = GetSysColor_(#COLOR_BTNFACE)
thisImg = CreateImage(#PB_Any, w, h)
StartDrawing(ImageOutput(thisImg))
Box(0, 0, w, h, buttonBack)
DrawImage(imageId, 5, (h - icoH)/2, icoW, icoH)
DrawingFont(getstockobject_(#DEFAULT_GUI_FONT))
DrawText(icoW + 10, (h - TextHeight(text$))/2, "Button/icon", #Black, buttonBack)
StopDrawing()
gadId = ButtonImageGadget(num, x, y, w, h, ImageID(thisImg))
ProcedureReturn gadId
EndProcedure
If OpenWindow(0, 0, 0, 140, 100, "Test", #PB_Window_SystemMenu|#PB_Window_ScreenCentered) And CreateGadgetList(WindowID(0))
ButtonIconGadget(0, 10, 10, 120, 28, "Button/Icon", CatchImage(0, ?ButtonIcon1), 16, 16)
ButtonIconGadget(1, 10, 45, 120, 38, "Button/Icon", CatchImage(0, ?ButtonIcon2), 32, 32)
Repeat
event = WaitWindowEvent()
Select event
Case #PB_Event_Gadget
Select EventGadget()
Case 0
MessageRequester("Event", "Button 0")
Case 1
MessageRequester("Event","Button 1")
EndSelect
EndSelect
Until event = #PB_Event_CloseWindow
EndIf
End
DataSection
ButtonIcon1:
Data.b $00,$00,$01,$00,$01,$00,$10,$10,$00,$00,$01,$00,$08,$00,$68,$05
Data.b $00,$00,$16,$00,$00,$00,$28,$00,$00,$00,$10,$00,$00,$00,$20,$00
Data.b $00,$00,$01,$00,$08,$00,$00,$00,$00,$00,$00,$00,$00,$00,$48,$00
Data.b $00,$00,$48,$00,$00,$00,$00,$01,$00,$00,$00,$00,$00,$00,$D5,$FE
Data.b $FE,$00,$CD,$FE,$FE,$00,$CD,$F6,$FE,$00,$BC,$F6,$FE,$00,$B4,$F6
Data.b $FE,$00,$AC,$F6,$FE,$00,$AC,$F6,$F6,$00,$A4,$F6,$F6,$00,$9B,$F6
Data.b $F6,$00,$AC,$EE,$F6,$00,$BC,$EE,$EE,$00,$A4,$EE,$F6,$00,$93,$EE
Data.b $F6,$00,$A4,$EE,$EE,$00,$8B,$EE,$F6,$00,$9B,$EE,$EE,$00,$83,$EE
Data.b $F6,$00,$CD,$E5,$E5,$00,$83,$EE,$EE,$00,$BC,$E5,$E5,$00,$9B,$E5
Data.b $EE,$00,$83,$EE,$DD,$00,$83,$E5,$EE,$00,$9B,$E5,$E5,$00,$7A,$E5
Data.b $EE,$00,$72,$E5,$EE,$00,$6A,$E5,$EE,$00,$7A,$E5,$E5,$00,$83,$E5
Data.b $DD,$00,$6A,$E5,$E5,$00,$7A,$E5,$DD,$00,$8B,$DD,$E5,$00,$7A,$DD
Data.b $E5,$00,$7A,$E5,$D5,$00,$6A,$DD,$E5,$00,$7A,$DD,$DD,$00,$62,$DD
Data.b $E5,$00,$72,$DD,$DD,$00,$8B,$D5,$DD,$00,$6A,$DD,$D5,$00,$7A,$D5
Data.b $DD,$00,$8B,$D5,$D5,$00,$72,$D5,$DD,$00,$B4,$CD,$CD,$00,$72,$D5
Data.b $D5,$00,$59,$D5,$DD,$00,$72,$D5,$CD,$00,$83,$CD,$D5,$00,$72,$CD
Data.b $D5,$00,$59,$D5,$CD,$00,$6A,$CD,$D5,$00,$51,$CD,$DD,$00,$72,$CD
Data.b $CD,$00,$59,$D5,$C4,$00,$83,$C4,$CD,$00,$83,$C4,$C4,$00,$7A,$C4
Data.b $C4,$00,$A4,$BC,$BC,$00,$62,$C4,$C4,$00,$41,$C4,$CD,$00,$83,$BC
Data.b $C4,$00,$39,$C4,$CD,$00,$7A,$BC,$BC,$00,$62,$BC,$C4,$00,$49,$C4
Data.b $BC,$00,$6A,$BC,$BC,$00,$7A,$B4,$BC,$00,$83,$CD,$83,$00,$62,$B4
Data.b $BC,$00,$62,$B4,$B4,$00,$62,$AC,$B4,$00,$20,$B4,$BC,$00,$30,$B4
Data.b $B4,$00,$49,$BC,$9B,$00,$51,$BC,$93,$00,$30,$B4,$AC,$00,$72,$A4
Data.b $AC,$00,$6A,$A4,$A4,$00,$18,$AC,$AC,$00,$62,$93,$9B,$00,$72,$93
Data.b $93,$00,$59,$8B,$93,$00,$51,$83,$8B,$00,$51,$83,$83,$00,$6A,$7A
Data.b $83,$00,$62,$7A,$83,$00,$51,$7A,$83,$00,$62,$7A,$7A,$00,$51,$7A
Data.b $7A,$00,$6A,$72,$7A,$00,$49,$72,$72,$00,$49,$6A,$72,$00,$59,$6A
Data.b $6A,$00,$41,$6A,$6A,$00,$51,$62,$62,$00,$51,$59,$62,$00,$49,$59
Data.b $62,$00,$41,$59,$62,$00,$39,$51,$59,$00,$39,$51,$51,$00,$30,$51
Data.b $51,$00,$41,$49,$51,$00,$30,$49,$51,$00,$39,$49,$49,$00,$30,$49
Data.b $49,$00,$30,$41,$49,$00,$39,$41,$41,$00,$28,$41,$41,$00,$30,$39
Data.b $41,$00,$28,$39,$39,$00,$30,$30,$39,$00,$28,$30,$39,$00,$20,$30
Data.b $30,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$4E,$47
Data.b $3D,$33,$24,$19,$18,$3F,$2C,$18,$19,$24,$33,$3D,$47,$49,$48,$3B
Data.b $2D,$22,$45,$28,$0E,$68,$62,$0E,$34,$46,$19,$2D,$3B,$48,$40,$2D
Data.b $19,$20,$6D,$4D,$08,$4C,$3C,$08,$56,$6B,$16,$19,$2D,$40,$35,$22
Data.b $30,$0C,$2F,$0B,$06,$06,$06,$06,$0D,$26,$0C,$20,$19,$35,$27,$46
Data.b $6F,$2F,$0B,$06,$03,$03,$03,$03,$06,$0B,$3E,$70,$30,$27,$21,$28
Data.b $4F,$0D,$06,$03,$02,$02,$02,$02,$03,$06,$0F,$52,$12,$21,$1C,$0E
Data.b $08,$06,$03,$02,$00,$2B,$11,$00,$0A,$03,$06,$08,$0E,$1C,$34,$63
Data.b $37,$06,$03,$02,$39,$6A,$6A,$59,$65,$50,$09,$42,$63,$23,$34,$5D
Data.b $29,$06,$03,$02,$2B,$6E,$6C,$5C,$67,$50,$09,$42,$5A,$23,$1C,$0E
Data.b $08,$06,$03,$02,$00,$5E,$54,$00,$13,$03,$06,$08,$0E,$1C,$21,$34
Data.b $58,$14,$06,$03,$02,$5E,$54,$02,$03,$06,$17,$5B,$28,$21,$27,$3F
Data.b $68,$26,$0B,$06,$03,$60,$57,$03,$06,$0B,$38,$68,$30,$27,$35,$22
Data.b $1B,$0C,$42,$14,$17,$6C,$62,$09,$17,$36,$0C,$16,$1D,$35,$40,$2D
Data.b $19,$30,$70,$51,$08,$61,$53,$08,$5A,$69,$16,$19,$2D,$40,$4B,$3B
Data.b $2D,$22,$2A,$20,$0E,$63,$63,$0E,$28,$30,$22,$2D,$3B,$4B,$4A,$4B
Data.b $40,$35,$27,$21,$1C,$41,$23,$1C,$21,$27,$35,$40,$4B,$43,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
ButtonIcon2:
Data.b $00,$00,$01,$00,$01,$00,$20,$20,$04,$00,$01,$00,$04,$00,$E8,$02
Data.b $00,$00,$16,$00,$00,$00,$28,$00,$00,$00,$20,$00,$00,$00,$40,$00
Data.b $00,$00,$01,$00,$04,$00,$00,$00,$00,$00,$80,$02,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$80,$00,$00,$80,$00,$00,$00,$80,$80,$00,$00,$00,$00
Data.b $80,$00,$00,$80,$80,$00,$80,$00,$80,$00,$80,$80,$80,$00,$C0,$C0
Data.b $C0,$00,$00,$FF,$00,$00,$FF,$00,$00,$00,$FF,$FF,$00,$00,$00,$00
Data.b $FF,$00,$00,$FF,$FF,$00,$FF,$00,$FF,$00,$FF,$FF,$FF,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$B8,$FF,$BF,$BF,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$8B,$8B,$FF,$FB,$FB,$FB,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$08,$B8,$B8,$FF,$BF,$BF,$BF,$A0,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$FF,$8B,$8B,$FF,$FB,$FB,$FA,$AA,$00,$00,$00,$00,$00,$00
Data.b $00,$0F,$BF,$F8,$B8,$FF,$BF,$BF,$BA,$AF,$A0,$00,$00,$00,$00,$00
Data.b $00,$FB,$FB,$FF,$8B,$8F,$FB,$FB,$AA,$FB,$FB,$00,$00,$00,$00,$00
Data.b $00,$BF,$BF,$BF,$F8,$BF,$BF,$BA,$AF,$BF,$BF,$00,$00,$00,$00,$00
Data.b $0B,$FB,$FB,$FB,$FF,$8F,$FB,$AA,$FB,$FB,$FB,$F0,$00,$00,$00,$00
Data.b $0F,$BF,$BF,$BF,$BF,$00,$00,$AF,$BF,$BF,$BF,$B0,$00,$00,$00,$00
Data.b $0E,$EE,$EE,$FB,$F0,$00,$00,$0B,$FB,$FB,$FB,$F0,$00,$00,$00,$00
Data.b $0E,$EE,$EE,$EE,$E0,$00,$00,$0E,$EE,$EE,$EE,$E0,$00,$00,$00,$00
Data.b $0B,$FB,$FB,$FB,$F0,$00,$00,$0B,$FB,$EE,$EE,$E0,$00,$00,$00,$00
Data.b $0F,$BF,$BF,$BF,$BA,$00,$00,$FF,$BF,$BF,$BF,$B0,$00,$00,$00,$00
Data.b $0B,$FB,$FB,$FB,$AA,$FB,$F8,$FF,$FB,$FB,$FB,$F0,$00,$00,$00,$00
Data.b $0F,$BF,$BF,$BA,$AF,$BF,$FB,$8F,$FF,$BF,$BF,$B0,$00,$00,$00,$00
Data.b $00,$FB,$FB,$AA,$FB,$FB,$F8,$B8,$FF,$FB,$FB,$00,$00,$00,$00,$00
Data.b $00,$BF,$BA,$AF,$BF,$BF,$FF,$8B,$8F,$FF,$BF,$00,$00,$00,$00,$00
Data.b $00,$0B,$AA,$AB,$FB,$FB,$FF,$B8,$B8,$FF,$F0,$00,$00,$00,$00,$00
Data.b $00,$00,$AA,$BF,$BF,$BF,$FF,$8B,$8B,$8F,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$0B,$FB,$FB,$FB,$FF,$B8,$B8,$B0,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$BF,$BF,$BF,$FF,$8B,$8B,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$FB,$FB,$FF,$B8,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$FF,$FF
Data.b $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$F0
Data.b $0F,$FF,$FF,$C0,$03,$FF,$FF,$80,$01,$FF,$FF,$00,$00,$FF,$FE,$00
Data.b $00,$7F,$FC,$00,$00,$3F,$F8,$00,$00,$1F,$F8,$00,$00,$1F,$F0,$00
Data.b $00,$0F,$F0,$00,$00,$0F,$F0,$03,$C0,$0F,$F0,$03,$C0,$0F,$F0,$03
Data.b $C0,$0F,$F0,$00,$00,$0F,$F0,$00,$00,$0F,$F0,$00,$00,$0F,$F8,$00
Data.b $00,$1F,$F8,$00,$00,$1F,$FC,$00,$00,$3F,$FE,$00,$00,$7F,$FF,$00
Data.b $00,$FF,$FF,$80,$01,$FF,$FF,$C0,$03,$FF,$FF,$F0,$0F,$FF,$FF,$FF
Data.b $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
EndDataSection
What goes around comes around.
PB 5.21 LTS (x86) - Windows 8.1
PB 5.21 LTS (x86) - Windows 8.1
- Fangbeast
- PureBasic Protozoa
- Posts: 4789
- Joined: Fri Apr 25, 2003 3:08 pm
- Location: Not Sydney!!! (Bad water, no goats)
I like Sparkie's solution. Sorry to have gotten it wrong. I wanted something like this as well but I could only get a solution like this for the toolbar so far via PBOSL ToolBarPro but nothing for single buttons.va!n wrote:@Fangbeast:
Sorry, maybe you misunderstand me!? I want to have a normal ButtonGadget - also with normal text and adding to this button only i small icon - and not an image on the complete button![]()
Code: Select all
for example it could look like this... +-------------------+ | (icon) AnyText | +-------------------+
Amateur Radio/VK3HAF, (D-STAR/DMR and more), Arduino, ESP32, Coding, Crochet
- Fangbeast
- PureBasic Protozoa
- Posts: 4789
- Joined: Fri Apr 25, 2003 3:08 pm
- Location: Not Sydney!!! (Bad water, no goats)
A couple of years ago, I saw someone render an icon onto a button. Don't know fo the code is still around though. As far as I am aware, a buttongadget is a child window (so a window object per se) and you should be able to render onto it using WindOutput.Tranquil wrote:I searched for a solution for this one to. The problem on this: With XPSkinning an ImageGadget does not look like a normal Button.
So, any API Solution on a ButtonGadget is welcome.
But, I could be wrong (and I frequently am) and there might be redraw issues etc, with this idea.
Amateur Radio/VK3HAF, (D-STAR/DMR and more), Arduino, ESP32, Coding, Crochet
@Fangbeast:
Yes, some years ago, someone wrote an example how to use text+icon in a button! But its long time ago and i dont remember the author nor i can find anything with the search option on forum! Would be nice, if Fred could add this feature to future versions
Yes, some years ago, someone wrote an example how to use text+icon in a button! But its long time ago and i dont remember the author nor i can find anything with the search option on forum! Would be nice, if Fred could add this feature to future versions

va!n aka Thorsten
Intel i7-980X Extreme Edition, 12 GB DDR3, Radeon 5870 2GB, Windows7 x64,
Intel i7-980X Extreme Edition, 12 GB DDR3, Radeon 5870 2GB, Windows7 x64,
In any case there is a problem with skinning on XP machines like Tranquil said.
I use FLYAKITE and the buttons have nice rounded corners (OSX style) so a rectangular image will always start outside the rounded corners, which looks horrible..
The only solution would be to have a transparancy mode while displaying the image.
I use FLYAKITE and the buttons have nice rounded corners (OSX style) so a rectangular image will always start outside the rounded corners, which looks horrible..
The only solution would be to have a transparancy mode while displaying the image.
I created a lib Settextcolor which allows it for 3.94.
http://home.tele2.fr/purebasic/archives ... iries.html
http://home.tele2.fr/purebasic/archives ... iries.html
- netmaestro
- PureBasic Bullfrog
- Posts: 8451
- Joined: Wed Jul 06, 2005 5:42 am
- Location: Fort Nelson, BC, Canada
This won't be what you saw, but sparkie's code massaged slightly to render a standard 32*32 icon looks like:A couple of years ago, I saw someone render an icon onto a button. Don't know fo the code is still around though
You'll need this (or you can use your own): http://www.networkmaestro.com/icons.zip
Code: Select all
;; Make sure movie.ico is in the program folder
;;
hIcon=LoadImage_(GetModuleHandle_(0),"movie.ico",#IMAGE_ICON,32,32,#LR_LOADFROMFILE)
Procedure ButtonIconGadget(num, hIcon, x, y, w, h, text$)
buttonBack = GetSysColor_(#COLOR_BTNFACE)
thisImg = CreateImage(#PB_Any, w, h)
hDC=StartDrawing(ImageOutput(thisImg))
Box(0, 0, w, h, buttonBack)
DrawIconEx_(hDC, 5,5, hIcon, 0, 0, 0, #Null, #DI_NORMAL | #DI_COMPAT )
DrawingFont(GetStockObject_(#DEFAULT_GUI_FONT))
DrawText(50, (h - TextHeight(text$))/2, text$, #Black, buttonBack)
StopDrawing()
gadId = ButtonImageGadget(num, x, y, w, h, ImageID(thisImg))
ProcedureReturn gadId
EndProcedure
OpenWindow(0,0,0,400,300,"",#PB_Window_SystemMenu|#PB_Window_ScreenCentered)
CreateGadgetList(WindowID(0))
ButtonIconGadget(0,hIcon,120,130,160,44,"Some Text Too")
Repeat
ev=WaitWindowEvent()
If EventWindow()=0
If ev=#PB_Event_Gadget
If EventGadget()=0
;do something useful
EndIf
EndIf
EndIf
Until ev=#PB_Event_CloseWindow
If you are going to include the icon as a resource, change the ico.s = " " line to reflect the ID you gave the icon in the resource file rather than the filename and change the last parameter in the LoadImage_() command from #LR_LOADFROMFILE to 0.ICON resource statement
Purpose:
Defines an icon.
Syntax:
resource-ID ICON filename.ICO
resource-ID ICON
BEGIN
' XX XX ... '
END
The argument resource-ID is a numeric value, or a string, that identifies the icon. More than one icon can be present in the script file. The ID must be unique within the resource type.
The argument filename specifies the name of the ICO file. The name can be given with or without quotes. If the file cannot be found in the current directory, the standard places will be searched. See also compiler option /I.
The argument 'XX XX ...' specifies a sequence of hexadecimal bytes, surrounded by single quotes, equivalent of the ICO file content.
BEGIN and END may be replaced by { and }.
Example:
1 ICON app.ico
9 ICON “icons\\myapp.ico“
5 ICON
{
'00 00 02 00 01 00 20 20 00 00 00 00 00 00 30 01'
'00 00 16 00 00 00 28 00 00 00 20 00 00 00 40 00'
}
Last edited by netmaestro on Fri Mar 17, 2006 5:47 am, edited 6 times in total.
BERESHEIT
@netmaestro:
thanks for the source, but when enable the XP skin, t doesnt looks like an original buttongadget (the border seems to be ok but not the filled area!?)
thanks for the source, but when enable the XP skin, t doesnt looks like an original buttongadget (the border seems to be ok but not the filled area!?)
Code: Select all
ico.s="d:\movie.ico"
hIcon=LoadImage_(GetModuleHandle_(0),@ico,#IMAGE_ICON,0,0,#LR_LOADFROMFILE)
Procedure ButtonIconGadget(num, hIcon, x, y, w, h, text$)
buttonBack = GetSysColor_(#COLOR_BTNFACE)
thisImg = CreateImage(#PB_Any, w, h)
hDC=StartDrawing(ImageOutput(thisImg))
Box(0, 0, w, h, buttonBack)
DrawIconEx_(hDC, 5,5, hIcon, 0, 0, 0, #Null, #DI_NORMAL | #DI_COMPAT )
DrawingFont(GetStockObject_(#DEFAULT_GUI_FONT))
DrawText(50, (h - TextHeight(text$))/2, text$, #Black, buttonBack)
StopDrawing()
gadId = ButtonImageGadget(num, x, y, w, h, ImageID(thisImg))
ProcedureReturn gadId
EndProcedure
OpenWindow(0,0,0,400,300,"",#PB_Window_SystemMenu|#PB_Window_ScreenCentered)
CreateGadgetList(WindowID(0))
ButtonIconGadget(0,hIcon,120,130,160,44,"Some Text Too")
ButtonGadget(1,120,70,160,44," Some Text Too")
Repeat
ev=WaitWindowEvent()
If EventWindow()=0
If ev=#PB_Event_Gadget
If EventGadget()=0
;do something useful
EndIf
EndIf
EndIf
Until ev=#PB_Event_CloseWindow
va!n aka Thorsten
Intel i7-980X Extreme Edition, 12 GB DDR3, Radeon 5870 2GB, Windows7 x64,
Intel i7-980X Extreme Edition, 12 GB DDR3, Radeon 5870 2GB, Windows7 x64,
- netmaestro
- PureBasic Bullfrog
- Posts: 8451
- Joined: Wed Jul 06, 2005 5:42 am
- Location: Fort Nelson, BC, Canada
Skinned Windows it is then. How does this look:
You need this (or use your own): http://www.networkmaestro.com/icons.zip
The icon image will resize with the button, but it will look best if you size the button about 10 or so pixels higher than the original icon. So for a 32*32 icon, that would be say 42 to 46 px high. For a 16*16, that's 26-30 or so.
You need this (or use your own): http://www.networkmaestro.com/icons.zip
Code: Select all
;; Make sure XP Skins Support is checked in your compiler options
;; and that setup.ico is in the program folder
;;
Global ButtonUpImage
Global ButtonDownImage
Global ButtonHoverImage
Global hIcon=LoadImage_(GetModuleHandle_(0),"setup.ico",#IMAGE_ICON,32,32,#LR_LOADFROMFILE)
Procedure ButtonCallback(hWnd, Message, wParam, lParam)
If IsImage(ButtonUpImage) And IsImage(ButtonDownImage)
If ChildWindowFromPoint_(WindowID(0),WindowMouseX(0),WindowMouseY(0))<>GadgetID(0)
If GetGadgetState(0)<>ImageID(ButtonUpImage)
SetGadgetState(0,ImageID(ButtonUpImage))
EndIf
EndIf
Select message
Case #WM_SETCURSOR
If ChildWindowFromPoint_(WindowID(0),WindowMouseX(0),WindowMouseY(0))=GadgetID(0)
If GetAsyncKeyState_(#VK_LBUTTON)=0
If GetGadgetState(0)<>ImageID(ButtonHoverImage)
SetGadgetState(0,ImageID(ButtonHoverImage))
EndIf
EndIf
EndIf
Case #WM_COMMAND
If ChildWindowFromPoint_(WindowID(0),WindowMouseX(0),WindowMouseY(0))=GadgetID(0)
SetGadgetState(0,ImageID(ButtonUpImage))
EndIf
Case #WM_MOUSEACTIVATE
If ChildWindowFromPoint_(WindowID(0),WindowMouseX(0),WindowMouseY(0))=GadgetID(0)
SetGadgetState(0,ImageID(ButtonDownImage))
EndIf
EndSelect
EndIf
Result = #PB_ProcessPureBasicEvents
ProcedureReturn Result
EndProcedure
Procedure DrawTImage(DC, ImageID, x, y, TransparentColor) ;Draw Transparent Image
Protected ImageList, BM.BITMAP
GetObject_(ImageID,SizeOf(BITMAP),BM.BITMAP)
ImageID = CopyImage_(ImageID,#IMAGE_BITMAP,BM\bmWidth,BM\bmHeight,0)
ImageList = ImageList_Create_(BM\bmWidth,BM\bmHeight,#ILC_COLORDDB|#ILC_MASK,1,0)
ImageList_AddMasked_(ImageList,ImageID,TransparentColor)
ImageList_Draw_(ImageList,0,DC,x,y,#ILD_TRANSPARENT)
ImageList_Destroy_(ImageList)
DeleteObject_(ImageID)
EndProcedure
ProcedureDLL SkinnedButtonIconGadget(num, hIcon, x, y, w, h, text$)
ButtonUpImage = CreateImage(#PB_Any, w, h)
ButtonDownImage = CreateImage(#PB_Any, w, h)
ButtonHoverImage = CreateImage(#PB_Any, w, h)
TextImage=CreateImage(#PB_Any,600,200)
StartDrawing(ImageOutput(TextImage))
DrawingFont(GetStockObject_(#DEFAULT_GUI_FONT))
tw=TextWidth(text$)
th=TextHeight(text$)
StopDrawing()
ResizeImage(TextImage,tw,th)
StartDrawing(ImageOutput(TextImage))
DrawingFont(GetStockObject_(#DEFAULT_GUI_FONT))
DrawText(0,0, text$, #Black,RGB(255,255,255))
StopDrawing()
hDC=StartDrawing(ImageOutput(ButtonUpImage))
Box(0,0,w,h,RGB(255,255,255))
c=250:d=255
For i=2 To h-1 Step 3
Box(0,i,w-1,3,RGB(c,c,d))
Select i
Case 0 To h*1/3
c-2 :d-1
Case h*1/3 To h*3/4
c-4 :d-3
Case h*3/4 To h
c-5 :d-5
EndSelect
Next
DrawIconEx_(hDC, 5,5, hIcon, h-10, h-10, 0, #Null, #DI_NORMAL | #DI_COMPAT )
DrawTImage(hDC, ImageID(TextImage), h+5, h/2-th/2, RGB(255,255,255))
StopDrawing()
hDC=StartDrawing(ImageOutput(ButtonDownImage))
c=250:d=255
For i=h To 0 Step -2
Box(0,i,w-1,2,RGB(c,c,d))
Select i
Case 0 To h*1/2
c-7 :d-5
Case h*1/2 To h
c-2 :d-2
EndSelect
Next
DrawIconEx_(hDC, 5,5, hIcon, h-10, h-10, 0, #Null, #DI_NORMAL | #DI_COMPAT )
DrawTImage(hDC, ImageID(TextImage), h+5, h/2-th/2, RGB(255,255,255))
StopDrawing()
hDC=StartDrawing(ImageOutput(ButtonHoverImage))
Box(0,0,w,h,RGB(255,255,255))
c=250:d=255
For i=2 To h-1 Step 3
Box(0,i,w-1,3,RGB(c,c,d))
Select i
Case h*1/3 To h*3/4
c-4 :d-4
Case h*3/4 To h
c-7 :d-7
EndSelect
Next
DrawIconEx_(hDC, 5,5, hIcon, h-10, h-10, 0, #Null, #DI_NORMAL | #DI_COMPAT )
DrawTImage(hDC, ImageID(TextImage), h+5, h/2-th/2, RGB(255,255,255))
StopDrawing()
gadId = ButtonImageGadget(num, x, y, w, h, ImageID(ButtonUpImage))
ProcedureReturn gadId
EndProcedure
OpenWindow(0,0,0,400,300,"",#PB_Window_SystemMenu|#PB_Window_ScreenCentered)
CreateGadgetList(WindowID(0))
SkinnedButtonIconGadget(0,hIcon,120,130,160,46,"Ico-Text Skinned")
ButtonGadget(1,120,80,160,46,"Normal Skinned Button")
SetWindowCallback(@ButtonCallback())
Repeat
ev=WaitWindowEvent()
If ev=#PB_Event_Gadget
If EventGadget()=0
; Do something useful
EndIf
EndIf
Until ev=#PB_Event_CloseWindow
End
BERESHEIT
Ok, here's something else I came up with. It accomodates .BMP files with or without a mask color. I tested with 32 x 32 BMP.s with a Magenta mask in this example. I was only able to test this on XP so let me know what happens on Win 98/ Win 2K. I'm still tuning it up a bit so feel free to dig in and optimize at will. 

Code: Select all
;/=============================================================
;/ Code : ButtonGadgets with BMP Icons
;/ Author : Sparkie
;/ Date : 03/16/06
;/ PB Version : PB 4.00 Beta7
;/ OS Support : Windows 98/NT/2000/XP/Server 2003
;/ Ref : /http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnwxp/html/winxpintro.asp
;/=============================================================
;/===============================================
;/ Constants / Enumerations
;/===============================================
#BCM_FIRST = $1600
#BCM_SETIMAGELIST = #BCM_FIRST + 2
#BUTTON_IMAGELIST_ALIGN_LEFT = 0
#MyWindow1 = 1
#Dummy = 0
#MyButton1 = 1
#MyButton2 = 2
;/===============================================
;/ Structure used for Button ImageList
;/===============================================
Structure _BUTTON_IMAGELIST
himl.l
margin.RECT
uAlign.l
EndStructure
Global buttonImgList._BUTTON_IMAGELIST
;/===============================================
;/ Procedure - Create icon/text ButtonImageGadget
;/ (Only used when XP theme not active)
;/===============================================
Procedure ButtonIconGadget(num, gadgetX, gadgetY, gadgetW, gadgetH, text$, imageNum, icoW, icoH, maskColor)
buttonBack = GetSysColor_(#COLOR_BTNFACE)
StartDrawing(ImageOutput(imageNum))
;...Replce mask color with Button color
For x = 0 To icoW - 1
For y = 0 To icoH - 1
If Point(x, y) = maskColor
Plot(x, y, buttonBack)
EndIf
Next y
Next x
StopDrawing()
;...Create image for ButtonImageGadget
thisImg = CreateImage(#PB_Any, gadgetW, gadgetH)
StartDrawing(ImageOutput(thisImg))
;...Fill with Button Color
Box(0, 0, gadgetW, gadgetH, buttonBack)
;...Draw our Graphic image
DrawImage(ImageID(imageNum), 5, (gadgetH - icoH)/2, icoW, icoH)
DrawingFont(getstockobject_(#DEFAULT_GUI_FONT))
;...Add our text
DrawText(icoW + 10, (gadgetH - TextHeight(text$))/2, text$, #Black, buttonBack)
StopDrawing()
;...Create ButtonImageGadget
gadId = ButtonImageGadget(num, gadgetX, gadgetY, gadgetW, gadgetH, ImageID(thisImg))
ProcedureReturn gadId
EndProcedure
;/===============================================
;/ Procedure - Create icon/text ButtonImageGadget
;/ (Only used when XP theme is active)
;/===============================================
Procedure ButtonImageList(imgW, imgH, imageId, maskColor)
;...Add our image with mask
hButtonImgList = ImageList_Create_(imgW, imgH, #ILC_COLOR24 | #ILC_MASK, 0, 2)
ImageList_AddMasked_(hButtonImgList, imageId, maskColor)
;...Fill our Button ImageList strcuture
With buttonImgList
\uAlign = #BUTTON_IMAGELIST_ALIGN_LEFT
\margin\top = 3
\margin\bottom = 3
\margin\left = 3
\margin\right = 3
EndWith
ProcedureReturn hButtonImgList
EndProcedure
;/===============================================
;/ Main Window
;/===============================================
If OpenWindow(#MyWindow1, 100, 100, 250, 200, "Buttons With Icons", #PB_Window_SystemMenu | #PB_Window_ScreenCentered) And CreateGadgetList(WindowID(#MyWindow1))
;...For now this is the best I could do to check for XP themes
ButtonGadget(#Dummy, 0, 0, 0, 0, "Dummy Gadget to test for XP theme")
;...If XP skins is enabled use Plan A
If GetWindowTheme_(GadgetID(#Dummy))
FreeGadget(#Dummy)
;...Create ButtonGadget 1
ButtonGadget(#MyButton1, 75, 50, 100, 42, "Clock", #PB_Button_Left)
;...Get our image for Button 1
img1 = CatchImage(#PB_Any, ?ButtonIcon1)
;...Set ImageList for #MyButton1
hImgList1 = ButtonImageList(32, 32, ImageID(img1), RGB(255, 0, 255))
buttonImgList\himl = hImgList1
SendMessage_(GadgetID(#MyButton1), #BCM_SETIMAGELIST, 0, @buttonImgList)
;...Create ButtonGadget 2
ButtonGadget(#MyButton2, 75, 100, 100, 42, "Calculator", #PB_Button_Left)
;...Get our image for Button 2
img2 = CatchImage(#PB_Any, ?ButtonIcon2)
;...Set ImageList for #MyButton2
hImgList2 = ButtonImageList(32, 32, ImageID(img2), RGB(255, 0, 255))
buttonImgList\himl = hImgList2
SendMessage_(GadgetID(#MyButton2), #BCM_SETIMAGELIST, 0, @buttonImgList)
Else
;...Not running with XP skins so go to plan B
FreeGadget(#Dummy)
img1 = CatchImage(#PB_Any, ?ButtonIcon1)
img2 = CatchImage(#PB_Any, ?ButtonIcon2)
ButtonIconGadget(#MyButton1, 75, 50, 100, 42, "Clock", img1, 32, 32, RGB(255, 0, 255))
ButtonIconGadget(#MyButton2, 75, 100, 100, 42, "Calculator", img2, 32, 32, RGB(255, 0, 255))
EndIf
;/===============================================
;/ Main Event Loop
;/===============================================
Repeat
event = WaitWindowEvent()
Until event = #PB_Event_CloseWindow
;...Destroy image lists
If hImgList1
ImageList_Destroy_(hImgList1)
EndIf
If hImgList2
ImageList_Destroy_(hImgList2)
EndIf
EndIf
End
DataSection
ButtonIcon1:
Data.b $42,$4D,$72,$04,$00,$00,$00,$00,$00,$00,$72,$00,$00,$00,$28,$00
Data.b $00,$00,$20,$00,$00,$00,$20,$00,$00,$00,$01,$00,$08,$00,$00,$00
Data.b $00,$00,$00,$04,$00,$00,$C3,$0E,$00,$00,$C3,$0E,$00,$00,$0F,$00
Data.b $00,$00,$00,$00,$00,$00,$FF,$FF,$FF,$00,$EF,$FF,$FF,$00,$F7,$F7
Data.b $E6,$00,$B5,$F7,$F7,$00,$AD,$B5,$9C,$00,$6B,$6B,$EF,$00,$84,$84
Data.b $73,$00,$FF,$00,$FF,$00,$42,$5A,$6B,$00,$42,$42,$31,$00,$08,$08
Data.b $9C,$00,$00,$08,$21,$00,$10,$08,$00,$00,$00,$08,$00,$00,$00,$00
Data.b $00,$00,$07,$07,$07,$06,$06,$04,$09,$09,$09,$06,$04,$03,$07,$07
Data.b $07,$07,$07,$03,$04,$04,$09,$06,$03,$06,$09,$07,$07,$07,$07,$07
Data.b $07,$07,$07,$07,$07,$07,$0E,$04,$00,$00,$00,$06,$04,$04,$09,$07
Data.b $0E,$07,$04,$04,$09,$06,$00,$00,$06,$0E,$07,$07,$07,$07,$07,$07
Data.b $07,$07,$07,$07,$07,$07,$07,$0E,$03,$00,$00,$04,$09,$0E,$0E,$0E
Data.b $0B,$0E,$0E,$0C,$04,$00,$00,$00,$0E,$07,$07,$07,$07,$07,$07,$07
Data.b $07,$07,$07,$07,$07,$07,$07,$07,$0E,$0C,$0E,$0B,$0A,$05,$05,$0A
Data.b $0B,$0B,$0E,$0E,$0E,$0B,$0E,$0E,$09,$07,$07,$07,$07,$07,$07,$07
Data.b $07,$07,$07,$07,$07,$07,$07,$09,$0B,$05,$05,$0B,$0B,$09,$06,$06
Data.b $09,$06,$06,$0B,$0E,$0E,$0B,$0B,$0E,$09,$07,$07,$07,$07,$07,$07
Data.b $07,$07,$07,$07,$07,$07,$0E,$0A,$05,$0E,$09,$01,$01,$01,$01,$01
Data.b $0D,$01,$01,$01,$01,$01,$0B,$0E,$0A,$0B,$0E,$07,$07,$07,$07,$07
Data.b $07,$07,$07,$07,$07,$0E,$0A,$0A,$0E,$01,$01,$08,$01,$01,$01,$09
Data.b $0E,$01,$01,$01,$06,$09,$01,$03,$0E,$0A,$0A,$0A,$07,$07,$07,$07
Data.b $07,$07,$07,$07,$0E,$0E,$0A,$0A,$01,$01,$01,$0E,$0E,$01,$01,$01
Data.b $06,$01,$01,$01,$0E,$09,$01,$01,$01,$0A,$0A,$0A,$05,$07,$07,$07
Data.b $07,$07,$07,$09,$0E,$05,$0E,$01,$01,$01,$01,$01,$01,$01,$01,$01
Data.b $01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$0E,$0B,$0A,$09,$07,$07
Data.b $07,$07,$07,$0E,$0E,$0B,$08,$04,$0C,$0E,$01,$01,$01,$01,$01,$01
Data.b $01,$01,$01,$01,$01,$01,$01,$09,$0E,$01,$01,$0E,$08,$0E,$07,$07
Data.b $07,$07,$04,$0E,$08,$0A,$04,$01,$06,$06,$01,$01,$01,$01,$01,$01
Data.b $01,$01,$01,$01,$01,$01,$01,$01,$09,$01,$01,$0B,$0B,$0E,$06,$07
Data.b $07,$07,$09,$0E,$05,$0B,$03,$01,$01,$01,$01,$01,$01,$01,$01,$01
Data.b $01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$04,$0E,$0B,$0E,$07
Data.b $07,$07,$0C,$0E,$05,$0E,$06,$09,$03,$01,$01,$01,$01,$01,$01,$04
Data.b $0C,$01,$01,$01,$01,$01,$01,$01,$08,$0E,$01,$04,$0A,$0A,$0E,$07
Data.b $07,$07,$0E,$0E,$08,$0E,$0E,$06,$08,$01,$01,$01,$01,$01,$01,$06
Data.b $0E,$01,$01,$01,$01,$01,$01,$01,$0B,$0E,$01,$04,$0A,$0B,$0E,$07
Data.b $07,$07,$0E,$08,$05,$0E,$0E,$01,$01,$01,$01,$01,$01,$01,$01,$0B
Data.b $0E,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$0C,$0A,$0E,$0E,$07
Data.b $07,$07,$06,$0A,$05,$0E,$0E,$09,$01,$04,$01,$01,$01,$01,$01,$0A
Data.b $0B,$09,$01,$01,$01,$01,$01,$06,$04,$01,$01,$0E,$0A,$0B,$06,$07
Data.b $07,$07,$07,$0E,$05,$05,$0E,$0E,$0C,$09,$09,$01,$01,$01,$01,$0B
Data.b $0A,$04,$01,$01,$01,$01,$01,$09,$08,$01,$06,$0A,$05,$0E,$07,$07
Data.b $07,$07,$07,$0A,$0A,$05,$0A,$0B,$0E,$01,$01,$01,$01,$01,$01,$09
Data.b $09,$01,$01,$01,$01,$01,$01,$04,$01,$04,$0E,$0A,$0E,$07,$07,$07
Data.b $07,$07,$07,$07,$0A,$0A,$05,$05,$0E,$0E,$01,$03,$0C,$01,$08,$00
Data.b $08,$01,$01,$01,$09,$01,$01,$01,$01,$0E,$0A,$0E,$0E,$07,$07,$07
Data.b $07,$07,$07,$07,$04,$0E,$05,$05,$0A,$0E,$0E,$0E,$09,$01,$06,$04
Data.b $0C,$04,$01,$01,$09,$01,$01,$01,$0E,$0E,$0E,$0E,$07,$07,$07,$07
Data.b $07,$07,$07,$07,$07,$07,$0E,$0A,$05,$0A,$0E,$0E,$0E,$06,$02,$04
Data.b $06,$03,$01,$01,$01,$05,$0B,$0E,$0E,$0E,$0E,$07,$07,$07,$07,$07
Data.b $07,$07,$03,$0E,$06,$0E,$0E,$0C,$0E,$05,$05,$0A,$0B,$0B,$0E,$0E
Data.b $0B,$0A,$0A,$0A,$0E,$0E,$0E,$0B,$0E,$09,$07,$07,$04,$0E,$08,$07
Data.b $07,$07,$06,$0E,$0E,$08,$06,$02,$0C,$08,$0E,$0A,$0A,$05,$05,$08
Data.b $0A,$0A,$0E,$0E,$0E,$0E,$0E,$03,$08,$02,$0E,$0E,$03,$0E,$09,$07
Data.b $07,$07,$07,$0E,$08,$03,$03,$03,$08,$06,$0E,$06,$0E,$0E,$0E,$0E
Data.b $0E,$0E,$0E,$0E,$0E,$04,$02,$04,$0B,$0E,$0E,$03,$08,$0E,$07,$07
Data.b $07,$07,$07,$07,$06,$0B,$03,$03,$08,$0E,$0E,$03,$07,$07,$07,$07
Data.b $03,$04,$00,$00,$04,$08,$03,$03,$03,$03,$08,$0E,$04,$07,$07,$07
Data.b $07,$07,$07,$07,$07,$07,$0E,$09,$0B,$0E,$0B,$03,$0B,$0E,$07,$07
Data.b $0E,$0E,$06,$08,$08,$03,$03,$08,$0E,$0E,$0E,$07,$07,$07,$07,$07
Data.b $07,$07,$07,$07,$07,$04,$0E,$03,$06,$0B,$09,$0E,$0E,$08,$07,$07
Data.b $07,$07,$07,$07,$0E,$0E,$09,$0E,$04,$07,$0E,$07,$07,$07,$07,$07
Data.b $07,$07,$07,$07,$07,$07,$04,$07,$07,$08,$04,$07,$07,$07,$07,$07
Data.b $07,$07,$07,$07,$07,$07,$07,$0E,$07,$07,$07,$07,$07,$07,$07,$07
Data.b $07,$07,$07,$07,$07,$07,$07,$07,$07,$06,$07,$07,$07,$07,$07,$07
Data.b $07,$07,$07,$07,$07,$07,$07,$0E,$07,$07,$07,$07,$07,$07,$07,$07
Data.b $07,$07,$07,$07,$07,$07,$07,$07,$07,$03,$0E,$03,$07,$07,$07,$07
Data.b $07,$07,$07,$07,$07,$07,$0E,$09,$07,$07,$07,$07,$07,$07,$07,$07
Data.b $07,$07,$07,$07,$07,$07,$07,$07,$07,$07,$03,$0E,$0B,$04,$07,$07
Data.b $07,$07,$07,$07,$09,$0E,$0E,$07,$07,$07,$07,$07,$07,$07,$07,$07
Data.b $07,$07,$07,$07,$07,$07,$07,$07,$07,$07,$07,$07,$04,$0B,$0B,$0E
Data.b $0B,$0E,$0E,$0E,$09,$07,$07,$07,$07,$07,$07,$07,$07,$07,$07,$07
Data.b $07,$07
ButtonIcon2:
Data.b $42,$4D,$76,$02,$00,$00,$00,$00,$00,$00,$76,$00,$00,$00,$28,$00
Data.b $00,$00,$20,$00,$00,$00,$20,$00,$00,$00,$01,$00,$04,$00,$00,$00
Data.b $00,$00,$00,$02,$00,$00,$C3,$0E,$00,$00,$C3,$0E,$00,$00,$10,$00
Data.b $00,$00,$00,$00,$00,$00,$FF,$FF,$FF,$00,$F7,$FF,$FF,$00,$97,$FA
Data.b $FF,$00,$79,$FF,$FF,$00,$78,$F2,$FF,$00,$66,$E2,$FF,$00,$F4,$DC
Data.b $AB,$00,$4D,$C5,$FF,$00,$52,$A2,$E1,$00,$AC,$92,$76,$00,$3A,$74
Data.b $A0,$00,$FF,$00,$FF,$00,$46,$2C,$21,$00,$11,$1B,$29,$00,$00,$11
Data.b $2B,$00,$00,$00,$00,$00,$BB,$BB,$BB,$BB,$BB,$BB,$1C,$FF,$FB,$BB
Data.b $BB,$BB,$BB,$BB,$BB,$BB,$BB,$BB,$BB,$BB,$B0,$CF,$FA,$1F,$FF,$BB
Data.b $BB,$BB,$BB,$BB,$BB,$BB,$BB,$BB,$BB,$6C,$FD,$58,$CF,$FF,$DA,$FB
Data.b $BB,$BB,$BB,$BB,$BB,$BB,$BB,$B6,$FF,$D4,$AF,$FD,$84,$33,$AE,$8F
Data.b $BB,$BB,$BB,$BB,$BB,$BB,$B9,$FD,$2A,$FF,$A5,$54,$43,$34,$38,$F8
Data.b $F6,$BB,$BB,$BB,$BB,$BB,$F8,$2C,$FA,$55,$54,$44,$5D,$FF,$A3,$7F
Data.b $8F,$6B,$BB,$BB,$BB,$BB,$FE,$E7,$54,$44,$4A,$FF,$8F,$CF,$73,$47
Data.b $F8,$F6,$BB,$BB,$BB,$BB,$F7,$55,$48,$D7,$4F,$9F,$A7,$57,$DD,$44
Data.b $7F,$8F,$9B,$BB,$BB,$BB,$BF,$55,$EF,$FF,$3A,$DA,$AD,$5F,$CF,$44
Data.b $47,$F8,$F9,$BB,$BB,$BB,$B9,$E5,$8F,$F8,$42,$7F,$CF,$7A,$87,$DD
Data.b $44,$8F,$7F,$CB,$BB,$BB,$BB,$FA,$54,$7F,$FA,$3F,$D7,$53,$5F,$CF
Data.b $34,$4A,$F7,$FC,$BB,$BB,$BB,$BF,$75,$AF,$CF,$22,$8F,$F7,$38,$8A
Data.b $F8,$44,$DD,$7F,$FB,$BB,$BB,$B9,$E7,$58,$8F,$F5,$FF,$E5,$7E,$F9
Data.b $CF,$A4,$4F,$A7,$FF,$BB,$BB,$BB,$F8,$54,$FC,$FA,$37,$DF,$C9,$69
Data.b $FF,$84,$45,$F7,$7F,$CB,$BB,$BB,$BF,$75,$7A,$5A,$FC,$96,$9C,$EA
Data.b $53,$37,$44,$8F,$77,$F6,$BB,$BB,$B6,$F7,$54,$FC,$9C,$FE,$A5,$35
Data.b $AF,$FF,$E3,$3D,$A7,$E9,$BB,$BB,$BB,$CA,$75,$8F,$E8,$33,$3A,$FF
Data.b $FC,$20,$FF,$33,$F8,$A9,$BB,$BB,$BB,$BF,$A7,$54,$33,$8E,$FF,$C2
Data.b $11,$AF,$FF,$D2,$4F,$A9,$BB,$BB,$BB,$BB,$F8,$55,$8F,$FC,$21,$2A
Data.b $FF,$F9,$FF,$F8,$37,$F9,$BB,$BB,$BB,$BB,$0F,$75,$AF,$92,$DF,$FF
Data.b $90,$00,$FF,$FD,$33,$F9,$BB,$BB,$BB,$BB,$B6,$F7,$4E,$FF,$F0,$00
Data.b $00,$00,$FF,$A5,$AF,$F0,$BB,$BB,$BB,$BB,$BB,$9F,$73,$FF,$C0,$00
Data.b $00,$00,$DF,$FF,$FF,$00,$BB,$BB,$BB,$BB,$BB,$B9,$F7,$5F,$C0,$00
Data.b $00,$00,$9F,$60,$0C,$F0,$BB,$BB,$BB,$BB,$BB,$BB,$9F,$78,$F0,$00
Data.b $00,$00,$0F,$00,$00,$F6,$BB,$BB,$BB,$BB,$BB,$BB,$B6,$FF,$F0,$00
Data.b $00,$00,$0F,$60,$00,$9D,$BB,$BB,$BB,$BB,$BB,$BB,$BB,$BB,$F1,$00
Data.b $00,$00,$09,$F1,$00,$0F,$BB,$BB,$BB,$BB,$BB,$BB,$BB,$BB,$DD,$00
Data.b $00,$00,$00,$FF,$10,$0F,$BB,$BB,$BB,$BB,$BB,$BB,$BB,$BB,$BF,$00
Data.b $00,$00,$00,$0F,$F6,$0F,$BB,$BB,$BB,$BB,$BB,$BB,$BB,$BB,$B9,$F0
Data.b $00,$00,$00,$00,$9F,$FF,$BB,$BB,$BB,$BB,$BB,$BB,$BB,$BB,$BB,$DF
Data.b $00,$00,$00,$00,$01,$FB,$BB,$BB,$BB,$BB,$BB,$BB,$BB,$BB,$BB,$BC
Data.b $F0,$00,$00,$00,$DF,$BB,$BB,$BB,$BB,$BB,$BB,$BB,$BB,$BB,$BB,$BB
Data.b $BF,$FF,$FF,$FC,$BB,$BB
EndDataSection
What goes around comes around.
PB 5.21 LTS (x86) - Windows 8.1
PB 5.21 LTS (x86) - Windows 8.1
- netmaestro
- PureBasic Bullfrog
- Posts: 8451
- Joined: Wed Jul 06, 2005 5:42 am
- Location: Fort Nelson, BC, Canada