Thread: Ok so MFC isn't dead.

  1. #31

    Join Date
    May 2005
    Posts
    1,042
    wxWidgets. Cross-platform. Lots of samples downloaded with the library (to create anything you could ever possibly want). OpenGL support. Better than win32, MFC, C#, sliced bread, etc.
    I'm not immature, I'm refined in the opposite direction.

  2. #32
    pwns nooblars
    Join Date
    Oct 2005
    Location
    Portland, Or
    Posts
    1,094
    I also like wxWidgets, though I have yet to make any full blown programs in it, I have tooled around with it and like it a lot more than most other toolkits.

  3. #33
    Ethernal Noob
    Join Date
    Nov 2001
    Posts
    1,901
    I've just got into wxWidgets mainly because I'm playing with 2008 C# express and the forms designer. I was always intimidated by GUI programming because I never knew about the RAD tools. I understand some people not liking them, but when it comes to deisgning guis I like the approache of placing them in a framework and twiddling with the events manually, makes learning about GUI design much easier and less tedious.

    But I think the best gui designer I have used comes with visual studio.

  4. #34
    The Right Honourable psychopath's Avatar
    Join Date
    Mar 2004
    Location
    Where circles begin.
    Posts
    1,071
    Slightly off-topic, but has anybody tried the form designer in VC++ 2008? The code it generates in '05 is aweful. Hoping they've fixed it a little in the newest release.
    M.Eng Computer Engineering Candidate
    B.Sc Computer Science

    Robotics and graphics enthusiast.

  5. #35
    C++まいる!Cをこわせ!
    Join Date
    Oct 2007
    Location
    Inside my computer
    Posts
    24,654
    With C#? Or C/C++? I'm guessing C#?
    Quote Originally Posted by Adak View Post
    io.h certainly IS included in some modern compilers. It is no longer part of the standard for C, but it is nevertheless, included in the very latest Pelles C versions.
    Quote Originally Posted by Salem View Post
    You mean it's included as a crutch to help ancient programmers limp along without them having to relearn too much.

    Outside of your DOS world, your header file is meaningless.

  6. #36
    C++ Witch laserlight's Avatar
    Join Date
    Oct 2003
    Location
    Singapore
    Posts
    28,413
    Probably C++, since it is "VC++ 2008".
    Quote Originally Posted by Bjarne Stroustrup (2000-10-14)
    I get maybe two dozen requests for help with some sort of programming or design problem every day. Most have more sense than to send me hundreds of lines of code. If they do, I ask them to find the smallest example that exhibits the problem and send me that. Mostly, they then find the error themselves. "Finding the smallest program that demonstrates the error" is a powerful debugging tool.
    Look up a C++ Reference and learn How To Ask Questions The Smart Way

  7. #37
    C++まいる!Cをこわせ!
    Join Date
    Oct 2007
    Location
    Inside my computer
    Posts
    24,654
    Well, I don't see how it generates "awful" code? That's why I'm guessing C# because the C# code generated IS awful; it didn't even align tabs correctly.
    Quote Originally Posted by Adak View Post
    io.h certainly IS included in some modern compilers. It is no longer part of the standard for C, but it is nevertheless, included in the very latest Pelles C versions.
    Quote Originally Posted by Salem View Post
    You mean it's included as a crutch to help ancient programmers limp along without them having to relearn too much.

    Outside of your DOS world, your header file is meaningless.

  8. #38
    Ethernal Noob
    Join Date
    Nov 2001
    Posts
    1,901
    From what I understand in C# the code the forms designer generates aside from the events is just a shell and just has the header, the arguments and an empty body. Any missed tab alignments may be due to the settings in your preferences, mine align quite well. The other stuff in the other partial class isn't to be touched as the designer will just replace it when it updates.

    I've found that it looks good as long as you don't mis-step and delete a function outside of the events menu, because it will leave the info in the autogenerated function and get confused when it tries to look for it.

  9. #39
    The Right Honourable psychopath's Avatar
    Join Date
    Mar 2004
    Location
    Where circles begin.
    Posts
    1,071
    Typical VC++ 05 generated code:
    Code:
    	private: System::Windows::Forms::MenuStrip^  menuStrip1;
    	protected: 
    	private: System::Windows::Forms::ToolStripMenuItem^  fileToolStripMenuItem;
    	private: System::Windows::Forms::ToolStripMenuItem^  newToolStripMenuItem;
    	private: System::Windows::Forms::ToolStripMenuItem^  openToolStripMenuItem;
    	private: System::Windows::Forms::ToolStripMenuItem^  saveToolStripMenuItem;
    
    	private: System::Windows::Forms::ToolStripMenuItem^  exitToolStripMenuItem;
    	private: System::Windows::Forms::ToolStripMenuItem^  editToolStripMenuItem;
    	private: System::Windows::Forms::ToolStripMenuItem^  viewToolStripMenuItem;
    	private: System::Windows::Forms::ToolStripMenuItem^  toolsToolStripMenuItem;
    And after a few days of moving and deleting various form elements:
    Code:
    private: System::IO::FileSystemWatcher^  fileSystemWatcher1;
    
    
    
    
    
    
    
    
    
    private: 
    
    
    public: 
    
    public: 
    
    public: 
    
    public: 
    
    public: 
    
    
    public: 
    
    
    
    public: 
    private: 
    
    
    public: 
    
    private: 
    
    
    
    private: System::ComponentModel::IContainer^  components;
    There were some other issues too, but that was one of the most irritating things. The generated C# code seemed much better to me, although probably because WinForms is probably "meant" to be primarily used with C#.

    EDIT: all of that generated code ends up in a massive header file too, which isn't really a problem, except it does it for event function bodies as well.
    Last edited by psychopath; 01-07-2008 at 02:09 PM.
    M.Eng Computer Engineering Candidate
    B.Sc Computer Science

    Robotics and graphics enthusiast.

  10. #40
    C++まいる!Cをこわせ!
    Join Date
    Oct 2007
    Location
    Inside my computer
    Posts
    24,654
    Quote Originally Posted by indigo0086 View Post
    From what I understand in C# the code the forms designer generates aside from the events is just a shell and just has the header, the arguments and an empty body. Any missed tab alignments may be due to the settings in your preferences, mine align quite well. The other stuff in the other partial class isn't to be touched as the designer will just replace it when it updates.
    No, it really misaligns it even with mostly default settings. It's like the function is placed with some tabs + a space or two, so you get like 3 spaces width when you do a tab for the indentation.
    Not to mention is really indents poorly ( protected: on the same row as the rest of the code, for example; typically Visual Studio default to removing all tabs and spaces when you type something + : ).
    So the designer is really poor at generating code. I don't think it has changed in 2008...
    Quote Originally Posted by Adak View Post
    io.h certainly IS included in some modern compilers. It is no longer part of the standard for C, but it is nevertheless, included in the very latest Pelles C versions.
    Quote Originally Posted by Salem View Post
    You mean it's included as a crutch to help ancient programmers limp along without them having to relearn too much.

    Outside of your DOS world, your header file is meaningless.

  11. #41
    C++まいる!Cをこわせ!
    Join Date
    Oct 2007
    Location
    Inside my computer
    Posts
    24,654
    Ah, Microsoft released a beta of the new MFC including things scheduled for implementation in the C++0x standard! NICE!
    http://www.microsoft.com/downloads/d...playlang=en&tm
    For those who have Visual Studio 2008, it's a must have.
    Quote Originally Posted by Adak View Post
    io.h certainly IS included in some modern compilers. It is no longer part of the standard for C, but it is nevertheless, included in the very latest Pelles C versions.
    Quote Originally Posted by Salem View Post
    You mean it's included as a crutch to help ancient programmers limp along without them having to relearn too much.

    Outside of your DOS world, your header file is meaningless.

  12. #42
    Registered Abuser
    Join Date
    Jun 2006
    Location
    Toronto
    Posts
    591
    Quote Originally Posted by brewbuck View Post
    Who said that? I was just asking if anybody else wrote Windows apps in C. The GUI is such a minor part of our product in terms of absolute effort...
    Right here! Spent a while creating a program (below) entirely in vanilla WinAPI/C and I must say the experiencing was educating, and above all, long (over 6550 LoC for GUI alone!). Does this mean I'd use MFC over it... not a chance. If I want basic API I'll use C, if I want RAD, I'll use wxWidgets (or some other x-plat widget library), if I want a bloated convoluted death, I'll use MFC.

Popular pages Recent additions subscribe to a feed

Similar Threads

  1. WIndows programming?
    By hostensteffa in forum Windows Programming
    Replies: 7
    Last Post: 06-07-2002, 08:52 PM
  2. Release MFC Programs & Dynamic MFC DLL :: MFC
    By kuphryn in forum Windows Programming
    Replies: 2
    Last Post: 05-18-2002, 06:42 PM
  3. Understanding The Future of MFC
    By kuphryn in forum Windows Programming
    Replies: 2
    Last Post: 04-15-2002, 09:08 PM
  4. Beginning MFC (Prosise) Part III - Now What? :: C++
    By kuphryn in forum C++ Programming
    Replies: 5
    Last Post: 03-03-2002, 06:58 PM
  5. MFC is Challenging :: C++
    By kuphryn in forum C++ Programming
    Replies: 8
    Last Post: 02-05-2002, 01:33 AM