LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Top Pane Problems in Multi-Pane UI

Whenever an Object (control/indicator) is created from front panel by dragging-dropping from palettes or pasted from the clipboard, we can place it wherever we want in a multi pane FP.

 

But if we create an Object (control/indicator) from BD right click menus, it is always created in the Top Pane of all the available panes.

 

But there is one notable thing, newly created objects goes to Position(0,0) in the Top Pane and further created objects align little below (or away from) the previous one.

 

It becomes an issue if the FP has multiple pane with the Top Pane having considerably small area.

 

 

 

QUERIES:

 

  1. Is there any way to select the Pane while creating new objects to tell which pane it should be created?
  2. How to move the object hidden under a pane with ease?(we can move the object with arrow keys, and once it is visible, we can drag and drop to the desired location)
  3. Is there any possibilities to move the object from one pane to other pane from within the BD?

 

I have posted a related topic Here.

0 Kudos
Message 1 of 11
(1,708 Views)

1.  Not that I'm aware of.

2.  I don't know what you mean by "hidden under a pane".  Do you mean a control that is hidden beyond the visible boundaries of the pane?  Just use the scroll bars until it is visible.

3.  Drag and Drop from one pane to the other.  Or Cut and Paste, but that breaks the wiring connection on the BD.

0 Kudos
Message 2 of 11
(1,656 Views)

@Its_Me_Ashiq(ஆஷிக்) wrote:

 

  1. Is there any way to select the Pane while creating new objects to tell which pane it should be created?
  2. How to move the object hidden under a pane with ease?(we can move the object with arrow keys, and once it is visible, we can drag and drop to the desired location)
  3. Is there any possibilities to move the object from one pane to other pane from within the BD?

 


In response to 2., have you tried right-clicking the terminal in the block diagram and selecting Find ________ (e.g. "Find Control" for a control)?

 

When I tried it in a new vi (admittedly LV2019), after

  1. Creating a control
  2. Creating a slider,
  3. Moving the slider to hide the control, and then
  4. Right-clicking the terminal in the block diagram and selecting Find Control,

LV moved the control to a "visible" part of the pane when selecting it for me. Which surprised me, but seems to meet your need.

 

(Or maybe I'm misunderstanding what you're asking. 😁)

 

-joeorbob

 

EDIT:

Also, I came across this QD plugin - it may be useful in what you're doing, but it also might not help at all. 😅

0 Kudos
Message 3 of 11
(1,647 Views)

I beleive he means that if you have a splitter, sometimes the new object gets created that's sitting *on* your left pane, but that's positioned *under* the right pane, meaning he has to scroll to get to it.

 

OP, I don't know how to answer your question (other than to say that definitely sounds frustrating lol). The only thing I could think of would be to make a quickdrop plugin that uses VI scripting to move hidden controls to visible areas.

 

I also wanted to show you a couple of pane managers that might help you out:

 

https://forums.ni.com/t5/Quick-Drop-Enthusiasts/Pane-Relief/gpm-p/3974152

https://forums.ni.com/t5/Quick-Drop-Enthusiasts/The-Splitter-amp-Pane-Manager/gpm-p/3834657

 

0 Kudos
Message 4 of 11
(1,644 Views)

@User002 wrote:

4. Right-clicking the terminal in the block diagram and selecting Find Control,


Or even just double-clicking the terminal. (Oh, how we learn those things that we used to know...😅)

 


@BertMcMahan wrote:

I beleive he means...


Was that directed at me or @RavensFan? (Or both?)

0 Kudos
Message 5 of 11
(1,629 Views)

@User002 wrote:


@BertMcMahan wrote:

I beleive he means...


Was that directed at me or @RavensFan? (Or both?)


It was directed at RavensFan (he said "I don't know what you mean by..."). I think you posted while I was composing my reply, so I didn't see your post until after mine was submitted.

Message 6 of 11
(1,611 Views)

Bert was answering my question about your post because it wasn't clear.  Actually, I suggested what I thought the answer was, which turned out to be the case.

 

But the post was clear what you meant by "hidden under a pane".  Technically nothing is hidden under the pane as there is no "under".  What you have is that it is beyond the visible edge of the pane it is a part of.

0 Kudos
Message 7 of 11
(1,575 Views)

What I meant to say using "Hidden Under Pane" was, the object is in a pane at a position beyond the visible area.

Object is not actually hidden, but not visible!Object is not actually hidden, but not visible!

 


@User002 wrote:

In response to 2., have you tried right-clicking the terminal in the block diagram and selecting Find ________ (e.g. "Find Control" for a control)?

 

When I tried it in a new vi (admittedly LV2019), after

  1. Creating a control
  2. Creating a slider,
  3. Moving the slider to hide the control, and then
  4. Right-clicking the terminal in the block diagram and selecting Find Control,

LV moved the control to a "visible" part of the pane when selecting it for me. Which surprised me, but seems to meet your need.


 Yeah, Find control/indicator or double clicking of a terminal shows it on the FP on its corresponding Pane. But it actually moves the pane origin, and it is not undo-able.

 


@RavensFan wrote:

3.  Drag and Drop from one pane to the other.  Or Cut and Paste, but that breaks the wiring connection on the BD.


Dragging and dropping from one pane to other, just works fine in normal cases.

 

But if you have created your UI with multiple dedicated regions (with splitters and panes) for different purposes even before placing the Objects,

 

it is a pain if you have the top pane with small area (and even with scrollbars disabled).

 

In my (example)case, I am having a FP with following UI,

 

Top pane dedicated only for the LogoTop pane dedicated only for the Logo

 

In this case, whatever objects I have created from BD are placed inside the Top Pane.

Some objects may have size bigger than the pane itself.

 

So, now if I decided to add some objects(result of some sub VI terminals) while developing my code,

  1. I have to Right click ->Find/Double click the object.
  2. View it in its pane (in the process my pane origin shifts some offset).
  3. Drag and drop to desired location.
  4. Repeat the same for all the objects.
  5. Bring back panes to (0,0) origin.
  6. Continue coding.

😑🙄.....

 

Is there no simple way to do that?

 

Why the newly crated object should always be placed in the Top Pane? Can't it be placed in any other panes? (note: newly crated object ->logically created object; not created by drag and drop)

 

I have also tried to do it by scripting, but this has blocked me on the way,

Related Property and Method for an ObjectRelated Property and Method for an Object

Owner relation of an objectOwner relation of an object

 

So, every Top level objects are owned by the Panel (FP) even if they are in different panes. So no way to set a pane as owner to any object. And the "Owning Pane" property is read only(note: Top level objects ->Objects which are not inside an array, cluster or a tab)

 

 

If we can use the move method on any object, it only moves the object within its current pane.

 

And even if we try to create a duplicate of that object and replace it with the original by Scripting, the resulting new object will also be created into the top pane.

 

Link to VI Scripting quick reference is Here .

 

0 Kudos
Message 8 of 11
(1,564 Views)

If you have a newer version of LabVIEW (I think LabVIEW 2019 introduced this, perhaps a version or so before that), you can use Quick Drop,   Ctrl-Space, Ctrl-O  to reset all of your panes back to the origin.  (It even works on the block diagram.)

0 Kudos
Message 9 of 11
(1,540 Views)

@RavensFan wrote:

If you have a newer version of LabVIEW (I think LabVIEW 2019 introduced this, perhaps a version or so before that), you can use Quick Drop,   Ctrl-Space, Ctrl-O  to reset all of your panes back to the origin.  (It even works on the block diagram.)


Yeah, I am aware of that option. But still there a list of process involved,

 


So, now if I decided to add some objects(result of some sub VI terminals) while developing my code,

  1. I have to Right click ->Find/Double click the object.
  2. View it in its pane (in the process my pane origin shifts some offset).
  3. Drag and drop to desired location.
  4. Repeat the same for all the objects.
  5. Bring back panes to (0,0) origin (to deal with the offset). (Ctrl+Space & Ctrl+O)
  6. Continue coding.

0 Kudos
Message 10 of 11
(1,536 Views)