I am not sure if this is the place to ask this question.
I have been working on learning C++ for about 2 years now.
A year ago i got tired of it all , so i made a comprimise and went to visual C++ 6.0 (didnt want to go to that because i wanted the most efficiancy i could get) and recently bought Visual Studio 2005. I have bought so many books and read so many of them. They all leave me with a gap. I learn how to do the simple things , but not teaching me where to go next. I can make text based console applications till the cows come home , I am very good at using most C++ features , Classes , pointers , not the best at them , but i still know enough to get by.
BUT the books , articles , programs , what ever i use never tell me how to take the next step to make "real" program that has a GUI.
I have even went to using the Windows Forms to design GUI , but have discovered even that didnt take me far enough.
None of my books have taught me how to use libraries , or antyhing like that. I was told i had to use these to get somewhere , but no idea where to go.
I want to make programs to help people , remember meds , manage health problems.
I want to make programs to plan gardens , where you have like a graph background and can drag and drop pictures of plants.
I want to make a jigsaw puzzle game.....
This stuff isnt rocket science i know , i just dont know the steps to go to learn the extra stuff so i can make windows programs GUI that i can have all of this stuff in.
Does any one have any ideas where i can go from here. Books i can read , sugestions i can take , articles to read.
I am great at making programs in PHP , because i can use the HTML as the gui.
I want this so bad , to be able to make programs , and am willing to work for it , i just need to have an idea where the path is i need to go down.
Thank you very much for reading this.
And thank you even more if you reply LOL.
I'm probably not the one to answer your question, as I'm just starting with text based stuff myself, and am not very proficient at it yet. I did come across an interesting site that teaches basic openGL, that you might want to check out:
One of the problems with GUI's is that they are system specific.
So whereas plain ol' console (text based) stuff runs under pretty much any operating system, once you start trying to program GUI applications you begin running into portability issued with your application.
Here it helps to understand that GUI libraries are not part of standard C++ but come as "add ons" - which probably explains why they aren't covered in basic C++ texts.
In any case, you'd need to have a goopd grasp of the basic C/C++ programming concepts before you will be able to use the GUI libraries.
So, what are your GUI development options?
If you only EVER want your GUI app to run under windows you can use the WinAPI functions and a Google search for "WinAPI tutorial" will get you started.
A second option is to adopt a proprietry API library such as QT from Trolltech. This offers a cross system compatible solution BUT will set you back quite a few dollars.
There are also open source solutions such as wxWidgets (mentioned above) and GTK+ which are pretty good cross-platform solutions which can be downloaded for free. Personally, this is the direction I'd suggest you take as you will be able to develop software for at least Windows, Linux and Mac without having to rewrite major portions of code. Try a Google search for "wxWidgets" and "GTK" and you'lll find not only the home page for both, but also tutorials and discussion groups.
Finally, note that these solutions are not mutually compatible - that is you need to choose whether you're going to develop GUI's as WinAPi, QT, GTK, wxWidget, or whatever. This range of options is probably another reason that developing GUI's never finds its way into the basic texts.
By the way, it's probably worth pointing out that the learning curve on all these is pretty much identical. You won't save much time going for one over the other - which is, in my opinion, a good reason to go for the most versatile option - namely one of the open-source GUI libraries (wxWidgets or GTK+).