views:

156

answers:

4

So far, I've been able to create a window in C, and add a button and edit box to that window. But, where can I find an exhaustive list of the system classes for all the form controls? I can't remember where I found BUTTON and EDIT--is there a LABEL? LISTBOX? CHECKBOX? COMBOBOX? etc.

Then, how would I use those built in windows functions...I think they're called common controls? Like open a file, save as, print, etc.

+8  A: 

You will go insane if you try to write raw Win32 code with C. If you can use C++, I highly suggest using Qt, if not, use Gtk.

Zifre
Your answer is predicated on only sane people trying to raw Win32 code (otherwise it would be impossible to go insane). I would say the opposite is much more likely. Maybe a better statement would be "You will be insane if you try to write raw Win32 code with C". :)
JaredPar
aw, it's not so bad.
Carson Myers
Carson's profile pic :-)
Bing
@JaredPar: I guess I must be insane then; I've tried it before (it's not much fun...)
Zifre
@Zifre, I haven't had the pleasure of doing it much myself but I've code reviewed some rather large features that did and it was ... challenging.
JaredPar
Code reviews of Win32 C code... Ouch.
Zifre
+2  A: 

Here you are: they are on MSDN.

But I agree with Zifre that you better use a gui-framework for stuff like this.
There are more like these, e.g. MFC or WTL.

fretje
huh, that whole section was missing from my copy of MSDN. Oh well.
Carson Myers
+3  A: 

Some people like things pure

stromcode zetcode forgers and heck if you're really feeling crazy, win32 in assembly

bobobobo
win32 in assembly: masochism at its purest
Adam Rosenfield
one day, I will write a full-scale win32 application in assembly. It's going to be incredible. Just you wait. @boboboetc, thanks for the links
Carson Myers
+1  A: 

For the open dialogs and so on you want the Common Dialogs section -- http://msdn.microsoft.com/en-us/library/ms645524(VS.85).aspx.

Whilst on the subject of Win32, if you're using the file dialogs and therefore file names you may also find the shell functions (http://msdn.microsoft.com/en-us/library/bb776426(VS.85).aspx) handy -- in particular, the PathXXX ones. I wish I'd known about these when I was getting started.

brone