From: Stephen P. <Ste...@uc...> - 2004-02-18 12:14:52
|
Yep, it will shift down to the bottom when you do SetStyle because = you're replacing the styles. The common control style CCS_TOP is applied = by default on new toolbars, but as soon as you do SetStyle you remove = this style unless you explicitly add it into your setstyle call. CCS_TOP is defined as 1, so to make the toolbar appear at the top of the = window with setstyle use: $TB->SetStyle(TBSTYLE_FLAT|TBSTYLE_TRANSPARENT|1); I'm unsure as to whether to put this in by default. I think I'll add an = option to the constructor so that you can specify where the toolbar is. Steve > -----Original Message----- > From: per...@li... > [mailto:per...@li...]On=20 > Behalf Of > Jez White > Sent: 18 February 2004 10:03 > To: Steve Pick; Win32 GUI Hackers (E-mail) > Subject: Re: [perl-win32-gui-hackers] CVS update: Toolbars >=20 >=20 > Hi, >=20 > I've had a play and it seems ok - although I'm having a few=20 > problems with > some of the styles - but this could be me:) >=20 > The example below creates a toolbar with a few buttons (run=20 > in the samples > folder for it to pick up the bitmaps) which are added via image lists. > If I use the SetStyle method (with any style) the toolbar=20 > ends up at the > bottem of the window. I've yet to get any functionality working with > SetExtendedStyle (I was trying to get tooltips working with=20 > the toolbar > using the text from the buttons). >=20 > Just me? >=20 > Cheers, >=20 > jez. > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D >=20 > use Win32::GUI; >=20 > $W =3D new Win32::GUI::Window( > -title =3D> "Win32::GUI::Toolbar test", > -left =3D> 100, > -top =3D> 100, > -width =3D> 500, > -height =3D> 400, > -name =3D> "Window", > ); >=20 > $B1 =3D new Win32::GUI::Bitmap("one.bmp"); > $B2 =3D new Win32::GUI::Bitmap("two.bmp"); > $B3 =3D new Win32::GUI::Bitmap("three.bmp"); > $IL =3D new Win32::GUI::ImageList(16, 16, 0, 3, 10); > $IL->Add($B1, 0); > $IL->Add($B2, 0); > $IL->Add($B3, 0); >=20 > $TB =3D $W->AddToolbar( > -left =3D> 0, > -top =3D> 0, > -width =3D> 300, > -height =3D> 100, > -name =3D> "Toolbar", > -addstyle =3D> 0x0800, > ); > $TB->SetImageList($IL); > #$TB->SetStyle(TBSTYLE_FLAT|TBSTYLE_TRANSPARENT); > #$TB->SetExtendedStyle(TBSTYLE_EX_MIXEDBUTTONS|TBSTYLE_EX_DRAW > DDARROWS); > $Bh1 =3D new Win32::GUI::Bitmap("three.bmp"); > $Bh2 =3D new Win32::GUI::Bitmap("one.bmp"); > $Bh3 =3D new Win32::GUI::Bitmap("two.bmp"); > $ILhot =3D new Win32::GUI::ImageList(16, 16, 0, 3, 10); > $ILhot->Add($Bh1, 0); > $ILhot->Add($Bh2, 0); > $ILhot->Add($Bh3, 0); > $TB->SetHotImageList($ILhot); > $TB->AddButtons( > 4, > 0, 1, 4, 0, 0, > 1, 2, 4, 0, 1, > 0, 0, 0, TBSTYLE_SEP, 0, > 2, 3, 4, 0, 2, > ); > $TB->AddString("One"); > $TB->AddString("Two"); > $TB->AddString("Three"); >=20 > $W->Show; >=20 > Win32::GUI::Dialog(); >=20 >=20 > sub Window_Terminate { > return -1; > } >=20 > sub Window_Resize { > $TB->Resize($W->ScaleWidth-10, 100); > } >=20 > sub Toolbar_ButtonClick { > my($button) =3D @_; > print "Toolbar: clicked button $button\n"; > } >=20 >=20 >=20 > ------------------------------------------------------- > SF.Net is sponsored by: Speed Start Your Linux Apps Now. > Build and deploy apps & Web services for Linux with > a free DVD software kit from IBM. Click Now! > http://ads.osdn.com/?ad_id=3D1356&alloc_id=3D3438&op=3Dclick > _______________________________________________ > Perl-Win32-GUI-Hackers mailing list > Per...@li... > https://lists.sourceforge.net/lists/listinfo/perl-win32-gui-hackers >=20 |