Developing windows forms applications? - c++

C++ is by far my language of choice. However, I have only developed libraries and console applications.
I like how in Visual C# you can easily design a GUI for your application - simple drag-and-drop controls and edit their properties simply.
I have tried to create a windows form application in Visual C++, but it uses the CLR/.Net. Is there a way to make a windows form application in Visual Studio without having to use the CLR or .Net? I really love how easy it is to design a form application in C# or VB.NET.
Thanks!

No, the whole concept of a .NET application is that it leverages the .NET framework to do all the cool stuff you mentioned. If you were to elaborate on what it is you are trying to accomplish we may could recommend an alternative solution, but if you write a C# winForms application it's going to need the .NET framework to run...
EDIT:
You could use a qt ide, or possibly a QT plugin for visual studio. Check this thread out:
Best QT ide?

Related

What is win32 project in visual c++?

While I was creating a console application, I saw the win32 project. I created one and saw a bunch of code (which I supose is for creating the main window).Is this better then visual c++ winform application?If so why?
Is this better then visual c++ winform application?
No, it's different. "Better" depends on your goals.
A Windows Forms application will be a C++/CLI application, and use .NET. This may be "easier" for developing a GUI appilcation, but adds a lot of complexity and dependencies.
A Win32 application will not take a dependency on .NET, but then you can't use the .NET types. For details on what you can make when choosing that option, see MSDN's Win32 Application documentation.

Alternative to VCL on C++Builder

So I'm working at a company and they've been using VCL for GUI development since forever. I'm rather newbie at creating GUI for Windows, but I dislike the options and limitations of the VCL. So I started looking around for other alternatives, are there something better out there?
I've read a lot about WCF but it's Visual Studio only. I also found about QT, but I'm not sure how would I pair C++Builder and the QT Designer software. Is there a package available?
Or if there is a better solution for Windows GUI development with C++Builder - we're using CodeGear's C++Builder 2007 - could you recommend it?
Thanks!
You can use Qt with Builder in conjunction with qmake or cmake(both tools are for project files generation). Well, you can use it with Builder without those generators but then you will have to write all MOC rules yourself and it is a tiresome job.
So my suggestion is to use Qt instead of VCL, especially relatively new Qt feature - Qt Quick which allows you to write UI in declarative fashion
wxWidgets (http://www.wxwidgets.org/) works with C++ Builder, but i am interested to know why you are stuck with C++ Builder? time to move on buddy, I would suggest to move toward QT and use its own QT Creator, Or go for .Net if you prefer.

Use Qt codes in C++

I have some codes in Qt Creator that work properly. I need to use this codes but in win32 application in .net framework. Does anyone have any idea how can I do this? I am totally new to Qt and do not know how to use this useful codes in c++ project?
I appreciate any help in advance
I think I could not get my message across. Qt is c++ but It has some differences with the native c++ app that we use in .net framework. so I can't just copy all the codes in my project to run it properly. Can we make a dll or library to use this qt code in .net or not? and how can I do this?
I really need help. Thank you so much
For almost all cases, you do not want to mix .net and Qt in same application. It's less work to just take the logic and rewrite it for .net (managed C++ or C#).
Next best option might be to keep the parts separate and have them communicate through some IPC mechanism.
This is, because any non-trivial Qt code depends on it's own event loop, so getting the existing Qt code play nice with other event loop is always a hassle, and trying to get it play nicely when actual application is managed .net code... No, just no, unless you have a very compelling reason, are expert on both Qt and .net, and have extra time to make it work right.
I'm not sure if you don't know how to download and install Qt or how to create a Qt project in Visual Studio IDE. Try this installation guide.
Do you want to link the Qt library to your win32 c++ app? I think you should build the qt source code first with your win32 compiler. I think you could include the qt header and link the library as normal win32 library to your application after that.

Can you build Winforms applications with C++?

I saw some Youtube videos that claimed they showed how to build a C++ applications using Winforms.
As far as I knew you needed something else like QT. Is it really possible to build using the same WinForms you would use to build a C# application but with C++ instead?
WinForms is managed code and is usable from practically every language with runs on the CLR. So standard native C++ can't build a winforms app. However managed C++ or C++/CLI can build WinForm apps in native code.
In general though I would question why you were doing this. If you are willing to have mixed mode C++ it would probably be much faster to
Build the UI in C#
Communicate with your native backend through a mixed mode C++ layer.
In VS ('05), you can go to File->New->Project... Then Visual C++ -> CLR -> Windows Forms Application. Have fun :)

Best way to create a standalone-exe (Forms) (C++)

I have to create an application for testing that is relatively simple. If a user plugs in a device into a USB (hid library), the form will say "Pass". If no device is detected, it will say "Fail".
I want to create the app to run on WinXP+. It must be a forms application as it needs to be visual and have colors. The biggest requirement for me is that it must be stand-alone (a user just double clicks, the file and it opens, no installation). I need to avoid installing any extra .dll files and want to avoid the .net framework all together. It has to be written in C++.
So my question is, what are my options? I am new to Forms applications and the only forms application I have written required the .net framework.
From my research, Visual C++ seems out of the question as it requires .net for Forms apps. What about Turbo C++ by Borland? It seems outdated, but can it do the job?
I would suggest Borland C++ Builder 5 or 6. Visual C++ lacks the functionality to create C++ form apps, if we dismiss MFC
I'd say Visual C++ would probably still be your best option. A standard simple Win32 C/C++ program using only the native API will should suite your needs just fine. If you're targeting XP+, then the only dependency would be "msvcrt.dll" which is included with Windows by default.
Edit: This article on MSDN should get you started in the right direction.
What you're talking about is C++/CLI, it's microsoft's dialect of C++ that requires a .Net framework. Please distinguish it from real (native) C++, which can be used to create what you want to. Visual C++ is perfectly fine, just make sure you don't create a .Net project.
Forms are a .NET library. It's not Windows or anything like that, you can use the native GUI libraries in Win32 with no problem or any native wrapping of them. You can implement this in native C++ easily in Visual Studio.
If you're looking to create the application in a rapid fashion (i.e. stock UI components that you can drag and drop onto forms), my experience is that Embarcardero C++ Builder effectively solves that problem space.
I like Visual C++ but it's not a great environment for rapidly creating forms based applications. I want to emphasize that I'm referring to Rapid Application Development (RAD) tools. There are plenty of great C++ IDEs and libraries for creating forms based applications and all of them should be able to create standalone exes.
Here is a list of related questions that might help in your decision:
https://stackoverflow.com/q/1754020/4916
https://stackoverflow.com/q/93326/4916
Best C++ IDE or Editor for Windows