LinuxQuestions.org
Welcome to the most active Linux Forum on the web.
Home Forums Tutorials Articles Register
Go Back   LinuxQuestions.org > Forums > Non-*NIX Forums > Programming
User Name
Password
Programming This forum is for all programming questions.
The question does not have to be directly related to Linux and any language is fair game.

Notices


Reply
  Search this Thread
Old 07-18-2007, 01:16 PM   #1
short circut
Member
 
Registered: Jun 2006
Distribution: Fedora Core, and Gentoo eventually, but i hate (XKEU)buntu
Posts: 48

Rep: Reputation: 15
Programming GUI


So here is the important question. I am planning on learning to programm GUI stuff. I program in c++(is the only language that i understand) and want to create something cross platform. I hope to eventually integrate opengl and openal into my projects. To this date i have only really done console programming and limited window api programming(what a nightmare). For an ide i use codeblocks in both windows and linux with the gcc compiler. If needed i can probably change ide. So my question is what do i learn. Do i learn Qt, wxWidgets, GTK+, or some other one that i havent heard of before.
 
Old 07-18-2007, 01:40 PM   #2
indienick
Senior Member
 
Registered: Dec 2005
Location: London, ON, Canada
Distribution: Arch, Ubuntu, Slackware, OpenBSD, FreeBSD
Posts: 1,853

Rep: Reputation: 65
You won't need to change the IDE. IDEs simply do nothing more than provide nice, little shortcuts/features and a means of keeping your code organized.

Here's a quick summary of those graphical libs you listed:
- Qt is the base of KDE-based GUI applications.
- wxWidgets is meant to be a cross-platform set of GUI libraries (similar to the Java AWT and Swing packages).
- GTK+ and GTK+2 (Gimp Tool Kit) are used for programming GUIs under the GNOME desktop. GTK+ programming is actually oriented in C, not C++. Yes, there are bindings to other languages (most notably Python), but C is the home-language of GTK+.

If you're doing cross-platform programming, I would suggest wxWidgets.
 
Old 07-18-2007, 01:48 PM   #3
short circut
Member
 
Registered: Jun 2006
Distribution: Fedora Core, and Gentoo eventually, but i hate (XKEU)buntu
Posts: 48

Original Poster
Rep: Reputation: 15
Thanks for your suggestion. But isnt QT crossplatform aswell. I may be wrong. What advantages does wx hold over qt ignoring the crossplatform issues. I have read up on each of these, and they both seem to be equally valid ways to program interfaces.
 
Old 07-18-2007, 03:44 PM   #4
exvor
Senior Member
 
Registered: Jul 2004
Location: Phoenix, Arizona
Distribution: Gentoo, LFS, Debian,Ubuntu
Posts: 1,537

Rep: Reputation: 87
I would say use GTK+ just because its easy to learn quickly and easy to install in a windows environment. wxwidgets is a bit of an exotic thing at this point but not out of the question. There are however more programs in GTK that would be good for examples when your learning. Ive never been a fan of QT though I do like KDE this might be from the nightmares that Ive had trying to compile it from source. Im not sure about qt in a windows environment either not sure how easy or difficult that can be but I would imagine its just as easy as GTK. Also GTK is free to use for business purposes while Qt is not so you may need to consider licensing restrictions.
 
Old 07-18-2007, 04:10 PM   #5
Tux-Slack
Member
 
Registered: Nov 2006
Location: Slovenia
Distribution: Slackware 13.37
Posts: 511

Rep: Reputation: 37
Qt Open Source can be used in business as well, but the applications must be in one of the Open Source licenses.
I've tried all of them, wxWidgets, GTK+ and Qt. And I've went for Qt. It is cross platform yes, for me it was the most simplest of them all. And I find Qt docs very helpful. Before Linux programing I've done MFC C++ programing in the academy, comparing it to Qt in all ways, even the documentations in my house Qt wins 10 to 1.
Qt isn't that hard to learn, and you also have GREAT docs with it witch explain everything, function by function, and provided with some examples it's the best thing.
 
Old 07-19-2007, 12:06 PM   #6
short circut
Member
 
Registered: Jun 2006
Distribution: Fedora Core, and Gentoo eventually, but i hate (XKEU)buntu
Posts: 48

Original Poster
Rep: Reputation: 15
I must thank you all for our input. I think i will go with QT. After hearing your suggestions and looking at source code qt seems to be the easiest to work with. wxWidgets reminded me too much of windows programming.(maybe its just me) It works well, but the structure doesnt make much sense to me. But i will consider using it in the future. I am sure that it has some features that qt doesnt have. As far as GTK+ i looked a little more into that and it just doesnt seem as flexible as the others to me.
 
  


Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
C++ GUI programming ohade Programming 3 08-21-2005 09:26 AM
GUI Programming Matir Programming 2 07-28-2005 03:24 PM
GUI programming in C++ Odin_of_Asgard Programming 3 05-21-2004 04:09 AM
GUI programming unixbrain Programming 10 09-28-2003 03:10 AM
GUI Programming Katrix Programming 5 07-20-2001 03:39 PM

LinuxQuestions.org > Forums > Non-*NIX Forums > Programming

All times are GMT -5. The time now is 09:54 AM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration