• 🏆 Texturing Contest #33 is OPEN! Contestants must re-texture a SD unit model found in-game (Warcraft 3 Classic), recreating the unit into a peaceful NPC version. 🔗Click here to enter!
  • It's time for the first HD Modeling Contest of 2024. Join the theme discussion for Hive's HD Modeling Contest #6! Click here to post your idea!

Non-console C++ program (GUI)

Status
Not open for further replies.
Level 23
Joined
Apr 16, 2012
Messages
4,041
just install some library that does this for you, preferably something good, like Qt or Gtk, or something similar.

Depending on what compiler you are using right now, you may or may not have to switch compiler(they support biggest C++ compilers, but if you use something pittyful as devc++, then yea, throw it out of the window please, do it for humanity)
 

Dr Super Good

Spell Reviewer
Level 64
Joined
Jan 18, 2005
Messages
27,198
If you are targeting Microsoft Windows only then you should use their windows frame work which is part of the Microsoft SDK (along with practically everything else windows).

As far as I know all programs on Microsoft machines use it as it is the only way to interface with MS's windowing system. Portable libraries like Qt are then adapters which abstract the Microsoft specific function calls to more general function calls which have been implemented on a variety of platforms.
 
Level 23
Joined
Apr 16, 2012
Messages
4,041
NEVER use widows bullshit in C++. The whole API is C, it is bullshit, and Qt and Gtk are all cross-platform, while windows crap isnt(obviously Gtk and Qt use Windows API, just as much as they use Xserver API for linux implementation)
 
Level 12
Joined
Feb 22, 2010
Messages
1,115
Why so much hate, windows C/C++ API is very well made and it has very good documentation(I would say best), you can find everything you search from MSDN.I know it looks awful when you first look at it but still, everything makes sense after you survived first part.
 

Dr Super Good

Spell Reviewer
Level 64
Joined
Jan 18, 2005
Messages
27,198
If you are only planning to target MS Windows OS then there really is no reason to use anything else. Where as all MS APIs are available "out of the box", systems like Qt often need you to build them yourselves or find a ready-made build that may or may not optimize well with your compiler.

If you are targeting more than one platform then obviously you want to try and avoid Windows API calls like the plague. However do be aware that Windows API works on both Xbox One and "PC" systems so is not that small a target.

Although having your program run on Linux is always a good idea, be aware that only really hardcore professionals use Linux. The average "joe" uses IOS for mobile devices, Android or Windows. Android does not really like C++ programs and IOS for mobile devices is a pain to develop for. If using only the Windows API saves you a lot of time and effort it can be worth it.
 
Level 23
Joined
Apr 16, 2012
Messages
4,041
using Windows API saves you anything? have you even looked how painful it is to even open a window using Windows API, compared to like 3 lines of code in Qt?

But yeah, opinions opinions, I will agree that Windows API is a valid choice too, and as can be seen, I dont recommend it, mainly to novices
 

Dr Super Good

Spell Reviewer
Level 64
Joined
Jan 18, 2005
Messages
27,198
You can get Microsoft Visual Studios for free to use it.
You can also get Microsoft Visual Studios for free to write C++ applications. I am not talking about some dumbed down version either, they give you the full professional version for free under the "Community" licence.

You can also make windows with buttons using JAVA. Unlike C++ it has practically no compatibility problems thanks to its complete abstraction. Same applies to Python and practically every virtual machine language.
 
Level 23
Joined
Apr 16, 2012
Messages
4,041
other than requiring your machine to have the runtime as well as interpreter(shouldnt be much of a problem), even then, nowadays, even your fridge should be capable of installing gcc, so you can compile C++ just as much. And if you know the architecture, and so does your compiler, you dont even need the platform to have the compiler.

Qt is fully abstracted over OSses too, so it has no compatibility problems either
 
Status
Not open for further replies.
Top