Hi,
Like you said, some funtionality can be solved... I dare to say that most
functionality can be done in LV.
Most of the things you mention are OS specific, and since LV is OS
independent, there are no functions provided for it. Also, some of the
things you mention, are not easy in any language.
+ drag and drop
There are some windows tricks to do this. There are examples. Look for the
OpenG toolkit.
+ file association
Can be changed in the windows explorer, the command line from an application
can be read to open with the selected file.
+ child windows
Normal child windows are standard. MDI are possible by using some windows
tricks. There are examples. Templates can be used to open several similar LV
windows.
+ minimizing to system tray
This is a windows thing, it can be done by calling the correct API's (just
like you have to do in every language).
+ contexual pop-up menus
I have a toolkit for this (for windows).
+ tree contol, tab control
Use ActiveX (just like you would do in every language)
+ Explorer style directory listing
You can use a ListVIEW ActiveX container to use this functionality.
+ true color application icons
+ does not highlight name of selected tab
+ dynamic creation of controls
These are indeed not very easy to do...
"Mads"
wrote in message
news:506500000008000000A9750000-1042324653000@exchange.ni.com...
> It would be great if we could have a page in the zone just for sharing
> advanced user interface solutions.
>
> There are a number of shortcomings in LabVIEW when it comes to basic
> user interface functionality; some can be overcomes using third party
> tools like the G Toolbox or ActiveX controls, others can only
> partially be solved. I'm thinking about things like drag and drop,
> file association, child windows, minimizing to system tray, contexual
> pop-up menus, true color application icons, tree contol, tab control
> does not highlight name of selected tab etc etc...
>
> Then you have less basic problems; say e.g. that you want to make a
> spreadsheet like interface where the user is to input numbers on some
> cells, text in others etc...and you want to indicate what type of
> input is required and immediately indicate false input...Using
> clusters is not very flexible neither when it comes run-time changes
> nor for control rescaling. Then you can use a text table and parse the
> inputs continously, but that will require lots of processing and if
> you e.g want a LED indicator in one cell you are limited to setting
> the color of a cell...
>
> That is the kind of bigger interface problems I would love to see a
> dedicated web page for...you could have a "hall of fame" of the best
> solutions with the source code attached...
>
> In this case my problem is quite similar to making an Explorer style
> directory listing...I need a resizable window showing a list of
> sensors with their status and measurement. If the window is so narrow
> that only one sensor can be listed per row the list should
> automatically become a single column with a scrollbar. If the window
> is enlarged beyond the space needed for showing the list as two
> columns the list should automatically resize to do just that.
>
> The above problem can be solved using multiple multicolumn listboxes
> and have logic control visibility, how the list are filled...and to
> track what element the user has selected. Quite a bit of code
> necessary, and the result might still only partially emulate the
> scalability and behaviour of e.g. a directory list in explorer.
> However - perhaps someone has already made something like this, or can
> suggest a better solution?