Need advice: fast ways to build cross-platform GUI's
I need to build a cross platform GUI. This is not usually my line of work, so I'm looking for a quick and easy way to do it. My GUI is not very complicated. It is just a dashboard with some options to select, the result of which builds a command that is sent-out to an embedded device tethered to the PC, Mac, or thing running linux.
There are a few constraints:
- The learning curve needs to be fast.
- I'd rather not use C++ or Java (don't like 'em)
- I'd rather not use anything object-oriented, unless it is substantially different than C++ and Java
When the user clicks a "send" button, the options will be converted into command parameters, and the resulting string will be passed to the low-level part of the project. This low-level part is just peachy. I don't need advice there.
Thanks.
There are a few constraints:
- The learning curve needs to be fast.
- I'd rather not use C++ or Java (don't like 'em)
- I'd rather not use anything object-oriented, unless it is substantially different than C++ and Java
When the user clicks a "send" button, the options will be converted into command parameters, and the resulting string will be passed to the low-level part of the project. This low-level part is just peachy. I don't need advice there.

Thanks.
Comments
After reading this Arstechnica article : (http://t.co/BGE7nWj) I downloaded the new Qt Creator 2.1 beta and tried out their QML javascript-based GUI builder. Didn't get too far but it looks promising. There's a Mac OS X version for free download, sorry don't have the link handy.
My main experience in this area is using RealBasic-- great rapid cross-platform environment (well at least it was 5 years ago when I was using it regularly). There's also PyQt or <your favorite scripting language here> + binding to <your favorite GUI toolkit here> for a remarkable number of combinations (Windows compatibility will be the thing that prunes the possibilities -- so you might look there first-- I don't know much about that). You can program Python, Javascript (QML), Perl (especially) in non-(or lightly)-OO ways. You didn't say what language you *do* like, so not sure which way you'd want to go.
My main experience in this area is using RealBasic-- great rapid cross-platform environment (well at least it was 5 years ago when I was using it regularly). There's also PyQt or <your favorite scripting language here> + binding to <your favorite GUI toolkit here> for a remarkable number of combinations (Windows compatibility will be the thing that prunes the possibilities -- so you might look there first-- I don't know much about that). You can program Python, Javascript (QML), Perl (especially) in non-(or lightly)-OO ways. You didn't say what language you *do* like, so not sure which way you'd want to go.
I think RealBasic is it. Basic is just fine -- nice and simple. Real Basic appears to have cross-platform support for accessing a serial port (via USB), and the ability to perform a system call, so that pretty much seals the deal.
For the record, programming methodologies that I like are based on Ada or VHDL. Methodologies that I tolerate are based or C or most assemblers. Methodologies that I despise are based on C++ or Java. I've never tried Xcode/objC because I have no interest in being a mac developer.
The only thing you might bump up against is that you are a low-level close-to-the-metal kind of programmer it looks like. It can be frustrating to be so removed from the action, especially for debugging purposes (and RealBasic was often buggy, and closed-source, so you just have to wait or work around them). So I would write vanilla C shared libraries or RB plugins with simple APIs that would drive lab devices, manage memory, and post events that the GUI side could act upon-- then run the C debugger on the library/plugin code.
RealBasic has always been rather object-oriented too, though in a nice non-obtrusive way. You'll probably like it because you can throw together a working GUI in no time and concentrate on the rest.