09-04-2009 11:05 AM
Hi there,
I guess someone out there must have found himself/herself in this situation.
The case is that I have a tab control (actually set as Indicator) and it expands to the lengths and breadths of my front panel. So all the controls/indicators fall into the area of this tab control, on different pages.
I have a boolean indicator that I would need always visible to the user. Now, since everything falls in the area of the tab control, the user will see the indicator only if he's seeing the page that has the indicator. So, I have created a similar indicator on each page and put it on the same location. This is not smart programming but it can be considered as smart since the user is looking at it always and sees the indicator(s) all the time and has no pain.
But, this gives a lot of problem for maintaining the indicator value on the page, currently visible to the user.
I would like to detach/separate the indicator from the tab control, so that it always stays up no matter which page the user is looking at.
Is there a way to keep the indicator detached from a tab control, even when it IS in the area covered by the tab control?
I used a dirty trick. I expanded the Caption (since it's visible to the user) and kept the text closer to the indicator and the left edge of the caption is outside the tab's area. So this makes it independent of the tab. BUT, this gives a shady effect in Vista, since my tab control is "system" type (which, strangely, I cannot change back to "modern") and a type def. I can change my front panel to "system" also, but it "some" case it would give some bad effect in one case or the other. So I need a proper, rather "official" way to separate the indicator from the tab control.
Any ideas?
Thanks ahead!
09-04-2009 11:09 AM
This has been discussed numerous times. All that you have to do is use the cursor keys to place the indicator where you want. If you use the mouse to drag it onto the tab, it becomes part of the page.
When you place a control/indicator on a tab with the arrow keys, you will see a black shadow around it. This disappears as soon as the VI is run.
09-04-2009 11:10 AM - edited 09-04-2009 11:11 AM
you could put the indecator of the tab and than make sure it is selected(the indecator) and push shift and the durection you need to go to put the indecator on the tab it will show a black outline of the indecator because it is now ontop of the tab control but in runtime the black outline will go away..
dennis beat me to it...
09-04-2009 11:21 AM
And if your indictors ends up behind the tab control, just set the Z-order so it is on top.
and repeating...
The "shadow" is there to remind you you have one control over-lapping another. It SHOULD go awy when the VI is run.
Ben
09-04-2009 11:28 AM - edited 09-04-2009 11:36 AM
Ah, how silly of me.
When I read the answer, I recalled I used to play with the front panel objects and once noticed also that the control, if moved with arrow keys, doesn't become part of the tab. But today didn't remember this.
Thanks, Dennis, Harold and Ben for clearing my doubt about the shadow/lines.
This is perhaps the quickest solved question. 😉 I tried to find such problem in the forum, but perhaps my selection of keywords was not good enough.
I have seen those black lines and I know it disappears during the run time, but this was shadow, so it was scary... 😛 ... I thought it doesn't belong to the tab so it's adopted to the front panel.
Thanks Ben for pointing out that it is to remind that one object is over the other. Now it looks appropriate and not a bug. 😉
Yes, I had set the Z-order, it's what I would do the first to keep object up, but those shadows scared me.
Thanks all! Kudos to all.
(so far, have earned only 2 kudos, that too long back. I hope to earn more once I finish off my own application)
09-04-2009 11:42 AM - edited 09-04-2009 11:46 AM
Well, one thing.
When I executed it the shadow effect didn't disappear, and that was the reason that I post the question.
And I checked it again. While Running, The shadow effect did NOT disappear. The outlines (the reminder of overlapping objects) disappeared.
The shadow didn't disappear, because on that moment the indicator is "disabled and grayed out" and it adapted to the front panel color. But, earlier, when the indicator was part of the tab, this shadow didn't appear, because it adapted to the tab color.
Now I think I should either change the front panel color (which is not good, because as I mentioned earlier, the tab is "system" type, and it looks white on my computer with Vista, but may look gray on XP or 2000 and in that case the front panel color will stay white, meaning white shadow of the disabled indicator); or not make the indicator "disabled and grayed" (which means making compromise with my application).
Is there any third option?
PS: sorry, I unmarked the solution, since the question still remains. Please take no offence.
09-04-2009 11:49 AM - edited 09-04-2009 11:52 AM
Here is an example:
ps, I ran it in continuous mode
I am also using windows vista.
09-04-2009 11:50 AM
If the shadow only appears on a VISTA machine, I will not be of further use.
One last note (becasue I don't give up easy)...
Many screen anomolies in LV can be traced back to the display settings (aceeleration color depth etc) or the driver fo rthe display adapter.
If this is OK on non-VISTA machine post an dumbed dwon version so we can confirm what you have reported. Who knows' maybe you have wondered into a corner that was not covered durring BETA testing on VISTA.
Take care,
Ben
09-04-2009 12:10 PM - edited 09-04-2009 12:12 PM
Thanks Harold for the small example.
Here is the modified one, which shows my problem.
I have added a copy of everything on your program, and the second tab control is of "system" type and there you can see the difference.
And I have also attached screen shots, for Ben, if he has no Vista on his computer.
becasue I don't give up easy -- Kudos.
Who knows' maybe you have wondered into a corner that was not covered durring BETA testing on VISTA - I'm excited.. 🙂
09-04-2009 12:21 PM