gui development in C++

This is a discussion on gui development in C++ within the C++ Programming forums, part of the General Programming Boards category; Dear C++ programmers, For developing GUI application in C++, which additional library/framework (free) is required Or C++ itself has any ...

  1. #1
    Registered User
    Join Date
    Jun 2010
    Posts
    18

    gui development in C++

    Dear C++ programmers,

    For developing GUI application in C++, which additional library/framework (free) is required Or C++ itself has any graphics development libraries? I mean, a library similar to Qt. I checked with GTK+, but its interface is not that great.

    Or, let me know if any other language is good for GUI apps development (other than JAVA)

    Thanks

  2. #2
    Registered User kryptkat's Avatar
    Join Date
    Dec 2002
    Posts
    638
    it depends on the app that you want to work with as to what you want it to do. you should first look in to the winapi for basic gui like dialog boxes and list boxes and buttons. and edit boxes. for graphics that are decent you could look in to the gdi or gdi+ libs and directx is also good.

  3. #3
    Registered User rogster001's Avatar
    Join Date
    Aug 2006
    Location
    Liverpool UK
    Posts
    1,438
    how do you mean by -its interface is not that great.,? do you mean Glade? have a look at FLTK as recommended to me on these pages, you will have to build it but it is an excellent -light- GUI tool for c++
    Thought for the day:
    "Are you sure your sanity chip is fully screwed in sir?" (Kryten)
    FLTK: "The most fun you can have with your clothes on."

    Stroustrup:
    "If I had thought of it and had some marketing sense every computer and just about any gadget would have had a little 'C++ Inside' sticker on it'"

  4. #4
    a guy with long hair Xupicor's Avatar
    Join Date
    Sep 2010
    Location
    Poland
    Posts
    103
    There's also Ultimate++, which is supposedly pretty advanced, although I never had an opportunity to try it out. It even comes with it's own IDE, named "TheIDE". I figure it's worth a try.

  5. #5
    C++まいる!Cをこわせ!
    Join Date
    Oct 2007
    Posts
    22,900
    Quote Originally Posted by kryptkat View Post
    ...you should first look in to the winapi for basic gui like dialog boxes and list boxes and buttons. and edit boxes. for graphics that are decent you could look in to the gdi or gdi+ libs and directx is also good.
    That is the worst possible thing to do. Especially for C++.

    There is also wxWidgets you might check out.
    Quote Originally Posted by Adak View Post
    io.h certainly IS included in some modern compilers. It is no longer part of the standard for C, but it is nevertheless, included in the very latest Pelles C versions.
    Quote Originally Posted by Salem View Post
    You mean it's included as a crutch to help ancient programmers limp along without them having to relearn too much.

    Outside of your DOS world, your header file is meaningless.

  6. #6
    Super Moderator VirtualAce's Avatar
    Join Date
    Aug 2001
    Posts
    9,597
    The answer depends on your platform. For Windows you can use MFC or one of the other APIs mentioned. MFC is not cross-platform while some other mentioned here are. If you are on Windows you could also use C++/CLI and use Windows forms or WPF. However I do not recommend using C++/CLI for anything other than middle level libraries that facilitate the communication between managed and unmanaged code.

    But to steer you in the correct direction the actual best solution isn't C++ at all. On Windows the best solution, and most widely supported by Microsoft, for GUI apps right now is C# and WPF or C# and Windows forms with WPF being the one recommended by Microsoft. I look for Windows forms to be deprecated in a few years. This is a C++ forum but I honestly don't see any benefit to writing GUI in C++ when better solutions exist.
    Last edited by VirtualAce; 10-09-2010 at 01:52 PM.

  7. #7
    Registered User rogster001's Avatar
    Join Date
    Aug 2006
    Location
    Liverpool UK
    Posts
    1,438

    tools

    i understand right tool for the job because i build stuff in real life- but i am annoyed that the market becomes cornered artificially with the likes of csharp and its .net dependancies when it would perhaps have been better to contribute to and extend the most sublime language there is
    Thought for the day:
    "Are you sure your sanity chip is fully screwed in sir?" (Kryten)
    FLTK: "The most fun you can have with your clothes on."

    Stroustrup:
    "If I had thought of it and had some marketing sense every computer and just about any gadget would have had a little 'C++ Inside' sticker on it'"

  8. #8
    C++まいる!Cをこわせ!
    Join Date
    Oct 2007
    Posts
    22,900
    Quote Originally Posted by rogster001 View Post
    i understand right tool for the job because i build stuff in real life- but i am annoyed that the market becomes cornered artificially with the likes of csharp and its .net dependancies when it would perhaps have been better to contribute to and extend the most sublime language there is
    QFT.
    That is all I have to say.

    Writing GUIs in a C++ is a cinch if you know what you're doing.
    Quote Originally Posted by Adak View Post
    io.h certainly IS included in some modern compilers. It is no longer part of the standard for C, but it is nevertheless, included in the very latest Pelles C versions.
    Quote Originally Posted by Salem View Post
    You mean it's included as a crutch to help ancient programmers limp along without them having to relearn too much.

    Outside of your DOS world, your header file is meaningless.

  9. #9
    Super Moderator VirtualAce's Avatar
    Join Date
    Aug 2001
    Posts
    9,597
    i understand right tool for the job because i build stuff in real life- but i am annoyed that the market becomes cornered artificially with the likes of csharp and its .net dependancies when it would perhaps have been better to contribute to and extend the most sublime language there is
    I echo these sentiments as well and although I totally disagree with the direction that MS is taking or appears to be taking with respect to unmanaged code and GUIs in general I am forced to admit that C# is a much better alternative at this point in time. Then again no one in Redmond asked for my opinion so it really doesn't matter at the end of the day.

    Writing GUIs in a C++ is a cinch if you know what you're doing.
    Very true if GUI is all you need. Unfortunately that is often not the case and these types of apps require other 'pieces' to be integrated in such as web services, databases, etc. and then the task becomes very interesting. GUIs can certainly be done in C++ and I have done them but I have turned to the dark side for now and do most of my GUIs in C#. However for performance critical code and non-GUI programming I obviously prefer C++. C++ is my absolute favorite language and I feel all other languages are pretty much wannabe's or copy cats of C++ but the truth is C++ is not the best choice for every programming task.

    All that being said I believe we have provided enough alternatives for the OP to make a well informed decision about which approach to take.
    Last edited by VirtualAce; 10-10-2010 at 02:37 AM.

  10. #10
    C++まいる!Cをこわせ!
    Join Date
    Oct 2007
    Posts
    22,900
    What C# usually benefits from is the fact that you have everything in one package. Database for C++? SQLite. Web services I don't know so much about, but I'm sure they exist.
    It's probably not harder than with C# if you know what you're doing, which just requires some experience. For newbies, C# is absolutely easier.
    Anyhow, whatever floats your boat, as they say.
    Quote Originally Posted by Adak View Post
    io.h certainly IS included in some modern compilers. It is no longer part of the standard for C, but it is nevertheless, included in the very latest Pelles C versions.
    Quote Originally Posted by Salem View Post
    You mean it's included as a crutch to help ancient programmers limp along without them having to relearn too much.

    Outside of your DOS world, your header file is meaningless.

  11. #11
    Registered User
    Join Date
    Jun 2010
    Posts
    18
    Thank you all for your valuable responses. And I'm very sorry for the late response, I was on vacation.

    Collectively, I understand that GUI devel in C++ is not suggestable. I forgot to mention, my platform is Linux. My requirement is to develop a gui app, which does a cycle of commands execution, manipulation of data and displaying the results.
    If the GUI framework has cross-platform support, then that's an added advantage. I'll continue with GTK+ or FLTK or Ultimate++ as suggested.
    Last edited by sangamesh; 10-23-2010 at 08:32 AM.

  12. #12
    C++まいる!Cをこわせ!
    Join Date
    Oct 2007
    Posts
    22,900
    Who says it is not suggestible? All we mentioned was to choose the right tool for the job. If you're familiar with C++, then there's nothing wrong with writing GUIs with it.
    Quote Originally Posted by Adak View Post
    io.h certainly IS included in some modern compilers. It is no longer part of the standard for C, but it is nevertheless, included in the very latest Pelles C versions.
    Quote Originally Posted by Salem View Post
    You mean it's included as a crutch to help ancient programmers limp along without them having to relearn too much.

    Outside of your DOS world, your header file is meaningless.

Popular pages Recent additions subscribe to a feed

Similar Threads

  1. Kickstart me for GUI app development!
    By xuftugulus in forum Linux Programming
    Replies: 12
    Last Post: 02-27-2008, 01:15 AM
  2. GUI development in C++
    By m_larkin2001 in forum C++ Programming
    Replies: 5
    Last Post: 08-22-2005, 07:06 AM
  3. C Gui Development
    By DaveHope in forum Linux Programming
    Replies: 2
    Last Post: 01-12-2004, 08:18 AM
  4. EASY GUI development.. like with Qt?
    By rezonax in forum C++ Programming
    Replies: 2
    Last Post: 09-16-2001, 02:18 PM

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21