Request: TabControlPage Border |
Post Reply |
Author | |
jpbro
Senior Member Joined: 12 January 2007 Status: Offline Points: 1355 |
Post Options
Thanks(0)
Posted: 21 March 2009 at 6:04pm |
I would like to be able to add a border to the TabControlPage control (ideally, I could set it to Office2007 style which would paint it in the correct color). Bonus points if the border could have rounded corners (to match the TabControl in Office 2007 mode) with the area outside the rounded corner transparent and the inside portion set to a color (for example, vbWindowBackground).
|
|
Product: Xtreme SuitePro (ActiveX) version 16.2.6
Platform: Windows XP - SP3 Language: Visual Basic 6.0 SP6 |
|
jpbro
Senior Member Joined: 12 January 2007 Status: Offline Points: 1355 |
Post Options
Thanks(0)
|
Something like this:
|
|
Product: Xtreme SuitePro (ActiveX) version 16.2.6
Platform: Windows XP - SP3 Language: Visual Basic 6.0 SP6 |
|
tobi
Senior Member Joined: 09 September 2004 Location: Germany Status: Offline Points: 451 |
Post Options
Thanks(0)
|
Hi jpbro,
how did you do that ? Looks really cool ! |
|
jpbro
Senior Member Joined: 12 January 2007 Status: Offline Points: 1355 |
Post Options
Thanks(0)
|
Hi tobi,
I'm using the TabControl with the Office 2007 appearance to hold the wizard steps, but I'm only showing 1 tab (step) at a time. I put a GroupBox control with the Back, Next and Cancel/End buttons on the first tab, then when the user changes steps (i.e. tab pages), I use the SetParent API to move the GroupBox to the current TabControlPage. I'll see if I can strip out some of the code from my current test project (it uses 3rd party libraries for some functions) and upload an example project for you to examine. |
|
Product: Xtreme SuitePro (ActiveX) version 16.2.6
Platform: Windows XP - SP3 Language: Visual Basic 6.0 SP6 |
|
jpbro
Senior Member Joined: 12 January 2007 Status: Offline Points: 1355 |
Post Options
Thanks(0)
|
Here's the sample project:
uploads/20090322_101743_WizardSkeleton.zip I think I pulled everything out that wouldn't work on other computers, but if the sample isn't working, just get back to me and I will fix it. Note that mine doesn't look as nice as the sample screenshot (above), because we can't set a border for the TabControlPage. |
|
Product: Xtreme SuitePro (ActiveX) version 16.2.6
Platform: Windows XP - SP3 Language: Visual Basic 6.0 SP6 |
|
tobi
Senior Member Joined: 09 September 2004 Location: Germany Status: Offline Points: 451 |
Post Options
Thanks(0)
|
Hi jpbro,
thanks for your sample ! It works and is really cool ! |
|
jpbro
Senior Member Joined: 12 January 2007 Status: Offline Points: 1355 |
Post Options
Thanks(0)
|
No problem tobi, hope you find it useful!
|
|
Product: Xtreme SuitePro (ActiveX) version 16.2.6
Platform: Windows XP - SP3 Language: Visual Basic 6.0 SP6 |
|
jpbro
Senior Member Joined: 12 January 2007 Status: Offline Points: 1355 |
Post Options
Thanks(0)
|
I had an idea that I could simulate the TabControlPage border by
putting a Transparent TabControlPage on the TabControl, and then
putting a transparent MarkupLabel on the TabControlPage. The
MarkupLabel would have a Border object with corner radius and
background color as required. Unfortunately, I experienced some
problems:
1) The MarkupLabel isn't a container control, so regular labels and other lightweight controls get covered by it. Can the MarkupLabel be made into a container control? I think it would be useful in a number of cases, where you want to use Markup for a background but have other controls on top of it (including lightweight controls). 2) The MarkupLabel transparency seems to be grabbing the TabControl background bitmap incorrectly. See this screenshot: Notice the light border arund the top and the dark border around the bottom of the MarkupLabel border. These seem to be getting sucked out of the edges of the TabControl instead of where the MarkupLabel is actually positioned over. 3) There doesn't seem to be any colours in the PaintManager.ColorSet to match the border of the TabControl with Office2007 appearance, so the closest that I got was that grey color (shown above). I see properties like TabExcelNormalLeftInnerBorder and TabPropertyPage2003BorderLeftHighlight, so can the equivalent TabOffice2007* colors be added? Here's a sample project: uploads/20090322_105556_WizardSkeleton.zip So: 1) Can the MarkupLabel control be turned into a container? 2) Can the transparency issue of the MarkupLable on a transparent TabControlPage be fixed? 3) If #2 is impossible, how about adding borders including color and outside transparency) to the TabControlPage? 4) Can the TabOffice2007* color properties be added to the TabControl.PaintManager.ColorSet object? Thanks. |
|
Product: Xtreme SuitePro (ActiveX) version 16.2.6
Platform: Windows XP - SP3 Language: Visual Basic 6.0 SP6 |
|
Oleg
Admin Group Joined: 21 May 2003 Location: United States Status: Offline Points: 11234 |
Post Options
Thanks(0)
|
Hi,
Problem in TabControlPage and Margins you set to 5. To fix border thing - revert Margins to 0 and Move Label to 5 pixels instead.
|
|
Oleg, Support Team
CODEJOCK SOFTWARE SOLUTIONS |
|
jpbro
Senior Member Joined: 12 January 2007 Status: Offline Points: 1355 |
Post Options
Thanks(0)
|
Thanks Oleg, that solves question #2. How about these (in particular #1 and #4):
1) Can the MarkupLabel control be turned into a container? 3) If #2 is impossible, how about adding borders including color and outside transparency) to the TabControlPage? 4) Can the TabOffice2007* color properties be added to the TabControl.PaintManager.ColorSet object? Otherwise solving #2 doesn't matter much since I still can't get the proper result. |
|
Product: Xtreme SuitePro (ActiveX) version 16.2.6
Platform: Windows XP - SP3 Language: Visual Basic 6.0 SP6 |
|
Post Reply | |
Tweet
|
Forum Jump | Forum Permissions You cannot post new topics in this forum You cannot reply to topics in this forum You cannot delete your posts in this forum You cannot edit your posts in this forum You cannot create polls in this forum You cannot vote in polls in this forum |