Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
  1. Home
  2. The Lounge
  3. Qt ready to replace MFC as favorite C++ framework [modified]

Qt ready to replace MFC as favorite C++ framework [modified]

Scheduled Pinned Locked Moved The Lounge
c++csharpcomdesigncollaboration
50 Posts 19 Posters 0 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • P pseudonym67

    As far as I understand it from the microsoft point of view MFC and C++ are dead ducks. MFC is nothing more than an out of date framework that has been passed by along with the shift to .net languages. C++ on the other hand was brutally dragged out into the street and slaughtered by the abomination that is C++.net or whatever monicker they've given to it these days. As for Qt yes it is the best modern C++ development framework around. No it is not as good as MFC was in it's day. Qt still needs a hell of a lot of work doing to it admittedly most of it is sorting out the minor inconviences that plague develpment such as the shoddy gui implementation and the fact that if you actually want to develop any kind of serious application you pretty much have to write it out yourself. It basically needs polishing with the end user in mind and then it needs polishing again just to get the bits they missed the first time.

    pseudonym67 My Articles[^] Beginning KDevelop Programming[^]

    N Offline
    N Offline
    Nemanja Trifunovic
    wrote on last edited by
    #21

    pseudonym67 wrote:

    As far as I understand it from the microsoft point of view MFC and C++ are dead ducks.

    When it comes to "enterprise" development. For ISVs, C++ is very much alive and is not going away.

    Programming Blog utf8-cpp

    A 1 Reply Last reply
    0
    • J John M Drescher

      Hans Dietrich wrote:

      Qt is not as well designed as MFC

      In my opinion it is much better designed. It definitely is better OO code, signals and slots are much better than the event model...

      Hans Dietrich wrote:

      Qt offers less functionality

      How? There is so much more functionality in Qt than there is in MFC. What about dynamic window layouts? Doing this in MFC requires hundreds of lines of code. And signals and slots are so much easier to work with than the event model.

      Hans Dietrich wrote:

      Qt is not as well integrated into the VS IDE as MFC

      With the open source version it is not integrated at all so I agree. However I do not miss that. I think 5 years ago with VC6 I would have missed it more but since VC went .NET adding events via the class view has not been all that great anyways so I have been doing this mostly manually anyways.

      John

      H Offline
      H Offline
      Hans Dietrich
      wrote on last edited by
      #22

      John M. Drescher wrote:

      n my opinion it is much better designed. It definitely is better OO code,

      MFC started out to be much more OO-oriented - much more similar to Borland's OWL framework. When MFC 1.0 was shown to Windows developers, their response forced MS to throw it out, and come up with the very thin wrapper that MFC is today. So, no, I don't think Qt is better designed, and if - as you state - it is better OO code, then that is a strike against it, not for it. When I'm writing MFC code, I don't have to continually think about how my code is going to map to Win32, since it is already thinly wrapped.

      John M. Drescher wrote:

      ...signals and slots are much better than the event model

      I disagree. Windows itself is event/message driven. To the extent that Qt is not, you will end up (at some point) fighting with or duplicating what Windows does. Remember that everything - Qt, MFC, .Net - sits on top of Win32.

      John M. Drescher wrote:

      What about dynamic window layouts?

      I know there are many things in Qt that I would like to also see in MFC, but MFC has many more of these than Qt does - as, for example, its adherence to the basic Windows messaging model.

      Best wishes, Hans


      [CodeProject Forum Guidelines] [How To Ask A Question] [My Articles]

      J 1 Reply Last reply
      0
      • N Nemanja Trifunovic

        Frankly, I don't care what is the favorite framework. One of the best thngs about C++ is that it does not lock you into any framework - you can use any of existing ones, write your own, or not use frameworks at all (my favorite option). For GUI, I use WTL which is a lean library, not a bloated framework.

        Programming Blog utf8-cpp

        H Offline
        H Offline
        Hans Dietrich
        wrote on last edited by
        #23

        I agree. I have used WTL on several projects, and immediately felt comfortable with it (no surprise, since WTL started out as a lightweight alternative to MFC).

        Best wishes, Hans


        [CodeProject Forum Guidelines] [How To Ask A Question] [My Articles]

        A S 2 Replies Last reply
        0
        • S Sudhir Mangla

          For QT vs MFC check this link http://phil.freehackers.org/kde/qt-vs-mfc.html[^] And for checking functionality provided by QT check documentation http://www.qtsoftware.com/products/appdev/library/modular-class-library[^]

          Sudhir Mangla http://tips.DevelopersVoice.com (Technical Tips and Tricks) http://Programmerworld.net (Free books and source code) http://Faq.Programmerworld.net (FAQ and Tips for programmers)
          http://health.Programmerworld.net (Health tips)

          H Offline
          H Offline
          Hans Dietrich
          wrote on last edited by
          #24

          Thanks for the links. I found the first one to be somewhat incoherent. Maybe you could do a better job, and post a Qt vs. MFC article here?

          Best wishes, Hans


          [CodeProject Forum Guidelines] [How To Ask A Question] [My Articles]

          1 Reply Last reply
          0
          • H Hans Dietrich

            John M. Drescher wrote:

            n my opinion it is much better designed. It definitely is better OO code,

            MFC started out to be much more OO-oriented - much more similar to Borland's OWL framework. When MFC 1.0 was shown to Windows developers, their response forced MS to throw it out, and come up with the very thin wrapper that MFC is today. So, no, I don't think Qt is better designed, and if - as you state - it is better OO code, then that is a strike against it, not for it. When I'm writing MFC code, I don't have to continually think about how my code is going to map to Win32, since it is already thinly wrapped.

            John M. Drescher wrote:

            ...signals and slots are much better than the event model

            I disagree. Windows itself is event/message driven. To the extent that Qt is not, you will end up (at some point) fighting with or duplicating what Windows does. Remember that everything - Qt, MFC, .Net - sits on top of Win32.

            John M. Drescher wrote:

            What about dynamic window layouts?

            I know there are many things in Qt that I would like to also see in MFC, but MFC has many more of these than Qt does - as, for example, its adherence to the basic Windows messaging model.

            Best wishes, Hans


            [CodeProject Forum Guidelines] [How To Ask A Question] [My Articles]

            J Offline
            J Offline
            John M Drescher
            wrote on last edited by
            #25

            Hans Dietrich wrote:

            I disagree. Windows itself is event/message driven. To the extent that Qt is not, you will end up (at some point) fighting with or duplicating what Windows does.

            I see your point. My reasoning is the windows event model does not work as well when it comes to the ability to extend (user created messages) and run time / dynamic created controls and layouts. These are two things that I spent a lot of time in the past to force MFC to do what I wanted.

            John

            1 Reply Last reply
            0
            • S Sudhir Mangla

              Actually new feature in MFC are based on a subset of BCGSoft 3rd party MFC library (MS licensed it).

              Sudhir Mangla http://tips.DevelopersVoice.com (Technical Tips and Tricks) http://Programmerworld.net (Free books and source code) http://Faq.Programmerworld.net (FAQ and Tips for programmers)
              http://health.Programmerworld.net (Health tips)

              A Offline
              A Offline
              Anna Jayne Metcalfe
              wrote on last edited by
              #26

              The ribbon stuff is, but not the rest.

              Anna :rose: Having a bad bug day? Tech Blog | Anna's Place | Tears and Laughter "If mushy peas are the food of the devil, the stotty cake is the frisbee of God"

              1 Reply Last reply
              0
              • S Sudhir Mangla

                Nokia has announced plans to make the open source Qt toolkit available under GNU's Lesser General Public License (LGPL), alongside the existing GPL and commercial licensing options. This change could significantly boost Qt adoption, redefine the economics of cross-platform programming, and dramatically reshape the landscape of commercial application development using C++. Now the question is will Microsoft take some time to Improve MFC for Windows. Although as VS2008 Service pack Microsoft as tried to Improve MFC. But Still if I compare QT with MFC , QT is much much batter than MFC both in design and Functionality and QT is much more updated for modern programming.Anyone who has used QT will be able to tell where MFC stand against QT. QT is better then MFC and can run on nearly any platform this make it a Big challenge for MFC. For most of my career I have worked on MFC. But if MFC remains a dead project QT will be the obvious choice. Main problem for QT was its license. But now that problem is solved. I near future if Microsoft did not improve MFC most of the C++ programmer will switch to QT. Want to know your comment do U feel Microsoft will respond to QT challenge. -------------------- In addition to adopting the LGPL license for Qt, Nokia will also be completely changing Qt development model to make it more inclusive and transparent. The source code will be moved to a publicly-accessible Git repository so that the latest changes will always be visible.

                Sudhir Mangla http://tips.DevelopersVoice.com (Technical Tips and Tricks) http://Programmerworld.net (Free books and source code) http://Faq.Programmerworld.net (FAQ and Tips for programmers)
                http://health.Programmerworld.net (Health tips)

                modified on Monday, January 26, 2009 10:53 AM

                N Offline
                N Offline
                Nish Nishant
                wrote on last edited by
                #27

                Where is John Cardinal when you need him? I was hoping to see his "people still use C++ to develop UIs?" retort! :rolleyes:

                Regards, Nish


                Nish’s thoughts on MFC, C++/CLI and .NET (my blog)
                My latest book : C++/CLI in Action / Amazon.com link

                S 1 Reply Last reply
                0
                • A Andre xxxxxxx

                  pseudonym67 wrote:

                  MFC is nothing more than an out of date framework that has been passed by along with the shift to .net languages.

                  I thought C++ had already been replaced by Java. 10 years ago.

                  N Offline
                  N Offline
                  Nish Nishant
                  wrote on last edited by
                  #28

                  Andre xxxxxxx wrote:

                  I thought C++ had already been replaced by Java. 10 years ago.

                  Wow - people still say "Java" when they mean "C#" ? Get your language names right, dude! :rolleyes:

                  Regards, Nish


                  Nish’s thoughts on MFC, C++/CLI and .NET (my blog)
                  My latest book : C++/CLI in Action / Amazon.com link

                  1 Reply Last reply
                  0
                  • N Nemanja Trifunovic

                    pseudonym67 wrote:

                    As far as I understand it from the microsoft point of view MFC and C++ are dead ducks.

                    When it comes to "enterprise" development. For ISVs, C++ is very much alive and is not going away.

                    Programming Blog utf8-cpp

                    A Offline
                    A Offline
                    Anna Jayne Metcalfe
                    wrote on last edited by
                    #29

                    I can second that. Among the ISVs I've met at ESWC, there seems to be about a 50/50 split between C++ and Delphi. Very occasionally I'll come aross one using .NET or Java (for example) but they're definitely in the margins. FWIW the biggest issues with .NET for ISVs I know of are a) security of the compiled executable (obfuscation gets you only so far) and b) the lack of a small non-install (e.g. statically linked) reddistributable framework runtime.

                    Anna :rose: Having a bad bug day? Tech Blog | Anna's Place | Tears and Laughter "If mushy peas are the food of the devil, the stotty cake is the frisbee of God"

                    L 1 Reply Last reply
                    0
                    • H Hans Dietrich

                      I agree. I have used WTL on several projects, and immediately felt comfortable with it (no surprise, since WTL started out as a lightweight alternative to MFC).

                      Best wishes, Hans


                      [CodeProject Forum Guidelines] [How To Ask A Question] [My Articles]

                      A Offline
                      A Offline
                      Anna Jayne Metcalfe
                      wrote on last edited by
                      #30

                      We've moved to it completely now..the only "live" project I've got that still uses it is ResOrg, and even that has a WTL only port underway. :-D

                      Anna :rose: Having a bad bug day? Tech Blog | Anna's Place | Tears and Laughter "If mushy peas are the food of the devil, the stotty cake is the frisbee of God"

                      H M 2 Replies Last reply
                      0
                      • A Anna Jayne Metcalfe

                        We've moved to it completely now..the only "live" project I've got that still uses it is ResOrg, and even that has a WTL only port underway. :-D

                        Anna :rose: Having a bad bug day? Tech Blog | Anna's Place | Tears and Laughter "If mushy peas are the food of the devil, the stotty cake is the frisbee of God"

                        H Offline
                        H Offline
                        Hans Dietrich
                        wrote on last edited by
                        #31

                        I'd like to hear more about that. Maybe you could keep notes and do a WTL porting article? :)

                        Best wishes, Hans


                        [CodeProject Forum Guidelines] [How To Ask A Question] [My Articles]

                        A 1 Reply Last reply
                        0
                        • H Hans Dietrich

                          I'd like to hear more about that. Maybe you could keep notes and do a WTL porting article? :)

                          Best wishes, Hans


                          [CodeProject Forum Guidelines] [How To Ask A Question] [My Articles]

                          A Offline
                          A Offline
                          Anna Jayne Metcalfe
                          wrote on last edited by
                          #32

                          That's an interesting idea. I suspect we're a bit too far along with it now to make it worthwhile, though! What we've done so far is a) develop most of the add-in and WTL framework bits we need in another product (Visual Lint in this case - the Task Dialog support etc. was all tried out there first), and b) port classes on an "as required" basis from MFC to WTL. The only really sticky bit has been the doc-view stuff the original design was based around - for that we've used a WTL Doc-View implementation we found here to simplify the port. Porting individual UI classes from MFC to WTL is usually pretty straightforward, in my experience; porting a whole project is a bit trickier because you need a critical mass of the work completed to get any of it working!

                          Anna :rose: Having a bad bug day? Tech Blog | Anna's Place | Tears and Laughter "If mushy peas are the food of the devil, the stotty cake is the frisbee of God"

                          1 Reply Last reply
                          0
                          • S Sudhir Mangla

                            Nokia has announced plans to make the open source Qt toolkit available under GNU's Lesser General Public License (LGPL), alongside the existing GPL and commercial licensing options. This change could significantly boost Qt adoption, redefine the economics of cross-platform programming, and dramatically reshape the landscape of commercial application development using C++. Now the question is will Microsoft take some time to Improve MFC for Windows. Although as VS2008 Service pack Microsoft as tried to Improve MFC. But Still if I compare QT with MFC , QT is much much batter than MFC both in design and Functionality and QT is much more updated for modern programming.Anyone who has used QT will be able to tell where MFC stand against QT. QT is better then MFC and can run on nearly any platform this make it a Big challenge for MFC. For most of my career I have worked on MFC. But if MFC remains a dead project QT will be the obvious choice. Main problem for QT was its license. But now that problem is solved. I near future if Microsoft did not improve MFC most of the C++ programmer will switch to QT. Want to know your comment do U feel Microsoft will respond to QT challenge. -------------------- In addition to adopting the LGPL license for Qt, Nokia will also be completely changing Qt development model to make it more inclusive and transparent. The source code will be moved to a publicly-accessible Git repository so that the latest changes will always be visible.

                            Sudhir Mangla http://tips.DevelopersVoice.com (Technical Tips and Tricks) http://Programmerworld.net (Free books and source code) http://Faq.Programmerworld.net (FAQ and Tips for programmers)
                            http://health.Programmerworld.net (Health tips)

                            modified on Monday, January 26, 2009 10:53 AM

                            C Offline
                            C Offline
                            Chris Losinger
                            wrote on last edited by
                            #33

                            Sudhir Mangla wrote:

                            I near future if Microsoft did not improve MFC most of the C++ programmer will switch to QT.

                            this will never happen

                            batch image processing

                            S 1 Reply Last reply
                            0
                            • N Nish Nishant

                              Where is John Cardinal when you need him? I was hoping to see his "people still use C++ to develop UIs?" retort! :rolleyes:

                              Regards, Nish


                              Nish’s thoughts on MFC, C++/CLI and .NET (my blog)
                              My latest book : C++/CLI in Action / Amazon.com link

                              S Offline
                              S Offline
                              Shog9 0
                              wrote on last edited by
                              #34

                              He's somewhere else, writing a "people still reply to C++ threads?" rant...

                              ----

                              You're right. These facts that you've laid out totally contradict the wild ramblings that I pulled off the back of cornflakes packets.

                              1 Reply Last reply
                              0
                              • A Andre xxxxxxx

                                pseudonym67 wrote:

                                MFC is nothing more than an out of date framework that has been passed by along with the shift to .net languages.

                                I thought C++ had already been replaced by Java. 10 years ago.

                                L Offline
                                L Offline
                                Lost User
                                wrote on last edited by
                                #35

                                You forgot the joke icon.

                                Visit http://www.notreadytogiveup.com/[^] and do something special today.

                                A 1 Reply Last reply
                                0
                                • A Anna Jayne Metcalfe

                                  I can second that. Among the ISVs I've met at ESWC, there seems to be about a 50/50 split between C++ and Delphi. Very occasionally I'll come aross one using .NET or Java (for example) but they're definitely in the margins. FWIW the biggest issues with .NET for ISVs I know of are a) security of the compiled executable (obfuscation gets you only so far) and b) the lack of a small non-install (e.g. statically linked) reddistributable framework runtime.

                                  Anna :rose: Having a bad bug day? Tech Blog | Anna's Place | Tears and Laughter "If mushy peas are the food of the devil, the stotty cake is the frisbee of God"

                                  L Offline
                                  L Offline
                                  Lost User
                                  wrote on last edited by
                                  #36

                                  A 2MB installer that needs a 200MB runtime?

                                  Visit http://www.notreadytogiveup.com/[^] and do something special today.

                                  A 1 Reply Last reply
                                  0
                                  • L Lost User

                                    You forgot the joke icon.

                                    Visit http://www.notreadytogiveup.com/[^] and do something special today.

                                    A Offline
                                    A Offline
                                    Andre xxxxxxx
                                    wrote on last edited by
                                    #37

                                    Trollslayer wrote:

                                    You forgot the joke icon.

                                    Thought that was obvious for everyone being in the software development field for a while ;)

                                    1 Reply Last reply
                                    0
                                    • L Lost User

                                      A 2MB installer that needs a 200MB runtime?

                                      Visit http://www.notreadytogiveup.com/[^] and do something special today.

                                      A Offline
                                      A Offline
                                      Anna Jayne Metcalfe
                                      wrote on last edited by
                                      #38

                                      Got it in one. :doh: .NET is great for enterprise, intranet, etc. It's not so well suited for small ISVs for this reason and security in particular.

                                      Anna :rose: Having a bad bug day? Tech Blog | Anna's Place | Tears and Laughter "If mushy peas are the food of the devil, the stotty cake is the frisbee of God"

                                      1 Reply Last reply
                                      0
                                      • S Sudhir Mangla

                                        Nokia has announced plans to make the open source Qt toolkit available under GNU's Lesser General Public License (LGPL), alongside the existing GPL and commercial licensing options. This change could significantly boost Qt adoption, redefine the economics of cross-platform programming, and dramatically reshape the landscape of commercial application development using C++. Now the question is will Microsoft take some time to Improve MFC for Windows. Although as VS2008 Service pack Microsoft as tried to Improve MFC. But Still if I compare QT with MFC , QT is much much batter than MFC both in design and Functionality and QT is much more updated for modern programming.Anyone who has used QT will be able to tell where MFC stand against QT. QT is better then MFC and can run on nearly any platform this make it a Big challenge for MFC. For most of my career I have worked on MFC. But if MFC remains a dead project QT will be the obvious choice. Main problem for QT was its license. But now that problem is solved. I near future if Microsoft did not improve MFC most of the C++ programmer will switch to QT. Want to know your comment do U feel Microsoft will respond to QT challenge. -------------------- In addition to adopting the LGPL license for Qt, Nokia will also be completely changing Qt development model to make it more inclusive and transparent. The source code will be moved to a publicly-accessible Git repository so that the latest changes will always be visible.

                                        Sudhir Mangla http://tips.DevelopersVoice.com (Technical Tips and Tricks) http://Programmerworld.net (Free books and source code) http://Faq.Programmerworld.net (FAQ and Tips for programmers)
                                        http://health.Programmerworld.net (Health tips)

                                        modified on Monday, January 26, 2009 10:53 AM

                                        Brian C HartB Offline
                                        Brian C HartB Offline
                                        Brian C Hart
                                        wrote on last edited by
                                        #39

                                        I used to program in Windows with MFC, but using C# and .NET and Windows Forms is a breeze; I've made the switch for good :)

                                        Sincerely Yours, Brian Hart

                                        Regards,

                                        Dr. Brian Hart
                                        drbrianhart343@gmail.com email
                                        LinkedIn: https://www.linkedin.com/in/dr-brian-hart-astrophysicist-veteran/

                                        N 1 Reply Last reply
                                        0
                                        • A Anna Jayne Metcalfe

                                          We've moved to it completely now..the only "live" project I've got that still uses it is ResOrg, and even that has a WTL only port underway. :-D

                                          Anna :rose: Having a bad bug day? Tech Blog | Anna's Place | Tears and Laughter "If mushy peas are the food of the devil, the stotty cake is the frisbee of God"

                                          M Offline
                                          M Offline
                                          Mike Diack
                                          wrote on last edited by
                                          #40

                                          I'd have to second the WTL comments. I've used it off and on for 5+ years now. The 3 main Win32 projects I'm currently responsible for partly use it (that's one of the best things about it, it's fast and efficient and can easily be mixed/added to existing Win32/MFC/ATL code) and the 4th project which I wrote from scratch in ATL/WTL was very easy going. It's well worth a look. Anna-Jayne's product "Visual Lint" (which is brill I must add!), uses it. Mike

                                          1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • World
                                          • Users
                                          • Groups