LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

DynaPanels: Now we can place controls dynamically

Interesting idea, but.....

 

It does not work for me. I can drop controls in the report but they always go into the top left corner overlapping each other. There seems no way for me to move them on the report panel. The "Show Resize <something>" (don't remember the exact naming) does change to Hide .... but does not do anything.

 

As a closed application (with more controls than the demo) it will have very limited usefullness but as toolkit it will require a specific application framework that allows instantiating your dynamic control VIs. Integrating that into a user application won't be trivial.

 

I'm not convinced dynamic runtime controls are very useful. In the past if we needed something like that we simply created panels that could be reinstantiated as many times as desired. That could result in a bunch of panels floating around on the screen but personally I prefer that above any constrained MDI (multiple document interface) like design.

 

The dynamic data connection is neat but only really useful if you allow programmatic access to it too.

 

Rolf Kalbermatter

Message Edited by rolfk on 09-26-2009 10:35 PM
Rolf Kalbermatter
My Blog
0 Kudos
Message 11 of 38
(4,468 Views)
It is neat! (atleast for the first look).  How did you do it?  IS the dynapanels new technology or proprietery to you?
Message 12 of 38
(4,439 Views)

rolfk wrote:

Interesting idea, but.....

 

There seems no way for me to move them on the report panel.



 

 

For moving  the control press and hold down SHIFT key on your keyboard and then drag control with mouse.

 



rolfk wrote:

 

As a closed application (with more controls than the demo) it will have very limited usefullness but as toolkit it will require a specific application framework that allows instantiating your dynamic control VIs. Integrating that into a user application won't be trivial.



It is not intended to be used as a close application.as far as programming and PC performance goes i didnt found any considerable impact with 100+ controls working simultaneously. as far as aestheics and user friendlyness goes, definately there is alimitation on how many controls we can place. however same limitation is present in normal design of vi.

Integrating this into application is really very simple. All you have to do is use one vi for publishing a variable in your application.

publish vi.jpg

the vi has two inputs one is variable name and other is data. the data is of variant type so that it can access any data type. it is almost same as writing to global variable. if you have variable assigned to a control(s). data is given to appropriate controls else it just gets ignored. also with minor modifications we can dynamically assign shared variable to controls as well

 


rolfk wrote:

 

I'm not convinced dynamic runtime controls are very useful. In the past if we needed something like that we simply created panels that could be reinstantiated as many times as desired. That could result in a bunch of panels floating around on the screen but personally I prefer that above any constrained MDI (multiple document interface) like design.

 


each control is actually a VI. personally i dont like multiple panels floating all around the screen(unless they are very few) they often overlap each other and manageing dozens of open windows is a problem for me. i even find it hard to manage 15-20 vi panels and block diagrams when i am programming. thats why i came up with this.

 

 

Tushar Jambhekar
tushar@jambhekar.com

Jambhekar Automation Solutions
LabVIEW Consultancy, LabVIEW Training
Rent a LabVIEW Developer, My Blog

Message 13 of 38
(4,436 Views)

Hi jaggs

it not something great. what i have done is something as follows.

 

each control you place is actually a vi with single control on it.

when you place a control. a vi gets placed as an mdi child window.

for communicating with actual application i use a class that implements publisher subscriber  architecture. (you can also use shared variables instead)

if you wish to have source code just let me know your email address and i will mail it to you.

Message Edited by Tushar Jambhekar on 09-26-2009 09:04 PM

Tushar Jambhekar
tushar@jambhekar.com

Jambhekar Automation Solutions
LabVIEW Consultancy, LabVIEW Training
Rent a LabVIEW Developer, My Blog

0 Kudos
Message 14 of 38
(4,434 Views)

Hello Tushar,

 

It is thaduri4@yahoo.com

 

Thanks.

0 Kudos
Message 15 of 38
(4,408 Views)

Tushar Jambhekar wrote:

each control is actually a VI. personally i dont like multiple panels floating all around the screen(unless they are very few) they often overlap each other and manageing dozens of open windows is a problem for me. i even find it hard to manage 15-20 vi panels and block diagrams when i am programming. thats why i came up with this.

 


Well I'm the opposite. I HATE MDI applications. That includes Visual Studio from Microsoft although there you can tear of the different subparts into floater windows.

 

I guess this could be a certain conditioning. When I started with windowed OS, Windows was not really any standard at all, and Macintosh OS was the standard. There MDI was basically unknown since Apple hat declared it a bad UI choice and not added any built in OS support for it. That meant almost nobody did it. Well I think Microsoft tried but it didn't really stick.

 

And there must be a good reason that even Microsoft moved away from MDI in its office suite. If you open multiple documents in Word you have multiple windows, one for each document.

 

Rolf Kalbermatter

Rolf Kalbermatter
My Blog
Message 16 of 38
(4,403 Views)

While it uses MDI below the surface, it's not really a MDI application.

 

It's an interesting idea to be able to dynamically create and link controls and indicators and there is probably some use. I thought it's pretty neat. 🙂

Message 17 of 38
(4,378 Views)

altenbach wrote:

While it uses MDI below the surface, it's not really a MDI application.

 

It's an interesting idea to be able to dynamically create and link controls and indicators and there is probably some use. I thought it's pretty neat. 🙂


Yes, it does not use MDI in the sense as what Windows implements and it is not MDI in that sense either. The solutions we did in the past where also not floating windows for a single control, but instead a floating window for a specific overview over a sub part of a large process. It contained a bit more than a single control. Smiley Wink

 

I too think the idea to be pretty neat and the implementation in fact quite smart, and there is certainly some use case for this, but that use case is a bit more limited than I thought in the first moment.

 

Rolf Kalbermatter

Message Edited by rolfk on 09-27-2009 08:01 PM
Rolf Kalbermatter
My Blog
0 Kudos
Message 18 of 38
(4,366 Views)

Hello Tushar,

 

I got your source code and found it to be a good starting point for dynamic creation of controls.  The key I believe is to properly handle all the dynamic control vi's with proper data exchange mechanism. 

 

Thanks for sharing the concept!

Message 19 of 38
(4,288 Views)

rolfk wrote:

 

If you open multiple documents in Word you have multiple windows, one for each document.


But I think Excel is still one main window with multiple sub-windows for each spreadsheet file opened. So also Adobe Reader...

- Partha ( CLD until Oct 2027 🙂 )
0 Kudos
Message 20 of 38
(4,168 Views)