Thread: C++ GUI Programming

  1. #1
    Registered User
    Join Date
    May 2006
    Posts
    1

    C++ GUI Programming

    I have just finished learning the very basics of C++ and now I am lost. I want to utilize the power C++ now. So I'd like to know what should I do next? I have got the fundamentals down. Now I plan to create something more than plain command-line programs -- I want to create GUI programs. But before doing that I want your guidance on what I should be doing / learning now that I have a very good understading of C++ basics and fundamentals.

  2. #2
    Lurking whiteflags's Avatar
    Join Date
    Apr 2006
    Location
    United States
    Posts
    9,612
    I'd learn some programming theory. Work with some basic types of algorithms, learn about data structures, maybe some AI. That type of thing. Then you can do some GUI work.

  3. #3
    Registered User
    Join Date
    Aug 2005
    Posts
    1,267
    writing GUI is highly operating system-dependent. Each os is different. MS-Window is completly diffent than either *nix or MAC. So you first have to decide on a platform. There are libraries such as QT that are supposed to be platform-independent. QT is free for personal use, but you will be learning their implementation and not a specific platform.

    But all that requires a solid understanding of C language -- c++ is often not required unless you use something like wxWindows or MFC. Then you need a solid understanding of C++. GUI is definitely not for beginners.

  4. #4
    Registered User
    Join Date
    May 2006
    Posts
    8
    Well, you can overcome the platform dependencies by switching to java.

    But if you're talking about windows, we'll just say you want to create your own little web browser ALA internet explorer...

    Grab a copy of visual studio and start tinkering with the windows based form.

    I'm assuming that what you're talking about when you say GUI is some form of event driven programming. Such as the file menu for your Internet Explorer browser (open, save, edit etc etc).

    Thats the thing though... what do you mean when you say GUI?

  5. #5
    Registered User Jaqui's Avatar
    Join Date
    Feb 2005
    Posts
    416
    Quote Originally Posted by KyussWren
    Well, you can overcome the platform dependencies by switching to java.
    not really, since the gnu java compiler conflicts with both sun's jvm and eclipse's jvm [ which conflict with each other as well ]

    the multitude of conflicting java virtual machines makes java useless.
    it is most defiantely not cross platform.

    try installong open office on linux, for full functionality it requires cjc, the gnu java compiler, yet that will stop you from using any eclipse java apps or and sun jvm based java apps.
    Quote Originally Posted by Jeff Henager
    If the average user can put a CD in and boot the system and follow the prompts, he can install and use Linux. If he can't do that simple task, he doesn't need to be around technology.

  6. #6
    Registered User
    Join Date
    Aug 2005
    Posts
    1,267
    >>the multitude of conflicting java virtual machines makes java useless.
    it is most defiantely not cross platform.

    Is that true??? I am not a java programmer and have no intention of being one, but from what little I've heard java applets can run on most computers around the globe. I wouldn't think of writing a desktop app in java because it's just simply too slow.

  7. #7
    Registered User
    Join Date
    Dec 2003
    Posts
    167
    I wouldn't think of writing a desktop app in java because it's just simply too slow.
    I think what slows down java desktop applications is swing. Apps like azureus and eclipse don't seem that slow because they use SWT instead of swing for the GUI which uses the underlying OS's native controls.
    silk.odyssey

  8. #8
    Registered User Jaqui's Avatar
    Join Date
    Feb 2005
    Posts
    416
    Quote Originally Posted by Ancient Dragon
    but from what little I've heard java applets can run on most computers around the globe.
    a java applet, that is written from the very beginning to use only those functions common to all jvms will run on any os. since most java developers use ever feature they can of their development environment, the end use gets hit with the conflicting jvm issue to use apps written for different jvms.

    it's the differences in jvms that kills true cross platform functionality in java.

    perl, python, ruby and php all have interpreters that can run any script, with at most an upgrade to newer version. the fact that java has never had this compatability and backwards support is the fault of the language creators. [ Sun microsystems ]

    grab yourself an old cgi script, written for perl 1.0, put it onto a current webserver with perl 5 installed, the perl interpreter will run the old script with no problems.

    take an old java applet, run it with the newest jvm, it will fail.

    that is why I say java is not portable, on top of the conflicts between jvms.
    Quote Originally Posted by Jeff Henager
    If the average user can put a CD in and boot the system and follow the prompts, he can install and use Linux. If he can't do that simple task, he doesn't need to be around technology.

Popular pages Recent additions subscribe to a feed

Similar Threads

  1. Convert Windows GUI to Linux GUI
    By BobS0327 in forum Linux Programming
    Replies: 21
    Last Post: 11-27-2005, 04:39 AM
  2. .NET And GUI Programming :: C++
    By kuphryn in forum C++ Programming
    Replies: 4
    Last Post: 01-27-2002, 04:22 PM
  3. GUI Programming :: C++ Exclusive
    By kuphryn in forum C++ Programming
    Replies: 5
    Last Post: 01-25-2002, 03:22 PM
  4. C++: Reference Book, GUI, Networking & Beyond
    By kuphryn in forum C++ Programming
    Replies: 4
    Last Post: 11-10-2001, 08:03 PM
  5. GUI (Graphical User Interface) Help Needed
    By Unregistered in forum C++ Programming
    Replies: 1
    Last Post: 10-11-2001, 10:35 AM