Sign in to follow this  
Prozak

GUI Intensive Apps, MFC?

Recommended Posts

Prozak    898
I'm starting a Windows GUI-intensive App, with lots of options and stuff to be shown and tweaked... This will be made using Visual Studio 2002, under C++, to work under Windows XP Pro... I would like to know what route you guys usually take when dev'ing these kind of apps, do you use MFC or do you go with other packages? Thanks for any tips on this [wink]

Share this post


Link to post
Share on other sites
soconne    105
Well with .NET, you can use microsoft's new windows forms. Its basically like developing with Visual Basic but you get to use C++.

Share this post


Link to post
Share on other sites
PlayfulPuppy    419
I'm developing a 3DS-MAX inspired level editor at the moment, and I'm using MFC.

I like MFC because due to it's C++ base it gels very well with external code (In my case the game engine), and it also removes a LOT of fluff concerning dealing with the GDI directly, which can be maddening in GUI-intensive applications.

I haven't had a chance to look at .NET, so I'm not able to comment on it, but it'd probably be worth looking into.

Share this post


Link to post
Share on other sites
soconne    105
The only thing I don't like about C# is that it doesn not natively support OpenGL. I know there are things like CSGL and TAO, but it would be nice if you didn't need to use those.

Has anybody integrated OpenGL with C++ .NET and windows forms? I havn't tried it yet, but is it the same as using VC 6.0 ?

Share this post


Link to post
Share on other sites
Prozak    898
Quote:
Original post by oconnellseanm
The only thing I don't like about C# is that it doesn not natively support OpenGL. I know there are things like CSGL and TAO, but it would be nice if you didn't need to use those.

Has anybody integrated OpenGL with C++ .NET and windows forms? I havn't tried it yet, but is it the same as using VC 6.0 ?


Please don't sidetrack my thread, k m8? ...

Like I said guys, I'm using unmanaged C++. Has anyone used WTL, or wxWidgets? or others packages/libraries...?

Share this post


Link to post
Share on other sites
soconne    105
Quote:
Original post by Prozak
Quote:
Original post by oconnellseanm
The only thing I don't like about C# is that it doesn not natively support OpenGL. I know there are things like CSGL and TAO, but it would be nice if you didn't need to use those.

Has anybody integrated OpenGL with C++ .NET and windows forms? I havn't tried it yet, but is it the same as using VC 6.0 ?


Please don't sidetrack my thread, k m8? ...

Like I said guys, I'm using unmanaged C++. Has anyone used WTL, or wxWidgets? or others packages/libraries...?



Maybe you don't know, but C# is also used for building GUI intensive apps. Hence it would be wise to listen to all the discussion of all possibilities and packages that are out there.

Share this post


Link to post
Share on other sites
Kwizatz    1392
Quote:
Original post by Prozak
Like I said guys, I'm using unmanaged C++. Has anyone used WTL, or wxWidgets? or others packages/libraries...?


I've used wxWidgets, its somewhat similar to MFC, but there is no wizard, so you have to write the message map, and the calls to data binding macros VC++ automatically creates for you when using MFC.

Its not that hard to do though, just follow the tutorials [smile]

Share this post


Link to post
Share on other sites
Big B    337
I'm using wxWidgets in my project now and its a joy to use. It also supports OpenGL, which is what I'm using in my project right now. It helps that I got a copy of DialogBlocks that automates everything for me.

Theres also wx-devcpp for designing wxWidgets apps. Its free, but the last time I tried it, it was still pretty buggy. Theres a new version out that claims to fix a lot of that, but I haven't tried it so I can't vouch for it. Of course if you already have VC++, you might not want to switch to another IDE.

Share this post


Link to post
Share on other sites
Seriema    634
I've used MFC, Qt, Win32 API, .NET and I've touched wxWidgets. My experience with these is that .NET is without any hesitation the simplest and nices way to make windows.

Go with wxWidgets if you need cross plattform but don't have a budget (cash).

Go with Qt if you need cross plattform and have money to spend.

Go with .Net if you're making a GUI intensive app i windows.

Go with MFC if you need a lobotomi, free.

Go with Win32 API if you've already lost your mind.

(hehe oki, the last 2 are told as jokes. But that's how I feel after working several weeks with each on both professional and hobby level.)

Share this post


Link to post
Share on other sites
Kibble    504
I disagree with the anti-MFC sentiment often expressed. Yes, .Net is better but MFC isn't anywhere close to 'bad'. Agreed it was horrible at first, then I learned of all the features it has to make many things much simpler and easier. If it has to use some other C++ code, I would definitely go with MFC as I think the extra complexity with multi-language stuff is not worth the difference between MFC and .Net.

Share this post


Link to post
Share on other sites
XXX_Andrew_XXX    340
Since no one else has mentioned it, I've been seriously looking at Win32GUI Generics, an exceptionally well written library by John Torjo, which has had some recent coverage in the C/C++ Users Journal.

If I had to say one bad thing about the library is that it's still very much in beta, with functionality being added rapidly - although the basics don't seem to change too much between releases. Other points to note are that some users are reporting very large executables.

If you're familiar with STL and the "modern" approach to C++ then I would recommend this library. You no longer need to worry about message maps, thread safety and even things that are difficult using MFC and other frameworks (eg/ window subclassing) are taken care of for you.

http://www.torjo.com/win32gui/index.html

Share this post


Link to post
Share on other sites
antareus    576
That generic library looks pretty neat. Although it seems a bit over the top in terms of learning curve.

If I get time I'll play around with combining a rules-based library with a WTL-style template approach (one that isn't completely over the top). The generic library, at a quick glance, seems to be overly templated for its own good (in terms of executable sizes).

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this