首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >windows应用程序

windows应用程序
EN

Stack Overflow用户
提问于 2009-05-06 00:12:52
回答 4查看 146关注 0票数 1

你好,我是来自php的c++新手。虽然我不是一个绝对的新手,这意味着我已经使用oop php和sql编写了大型数据库驱动的应用程序,但我想知道使用c++创建独立windows应用程序的一般过程是什么,就像模式、APIs编译等一样……

编辑:就GUI而言,你会如何使用像firefox这样的可视化界面呢?您如何创建外观,因为它看起来不太像visualc++中的AWT库?

EN

回答 4

Stack Overflow用户

发布于 2009-05-06 00:41:42

我认为你真的应该拿一本Charles Petzold的Programming Windows 5th Edition来帮助你了解很多这些背景信息。

票数 4
EN

Stack Overflow用户

发布于 2009-05-06 00:56:40

Microsoft库:

在非托管C++中,您可以使用原生ATL、MFC或Win32 /WTL。

原生Windows是OSes的Win32家族公开的C风格方法的集合。这些API通过操作窗口和消息循环来工作。您可以在MSDN Windowing部分开始阅读有关Win32的内容。

MFC是一个C++类库,它为Win32 API提供了丰富的面向对象的包装器。它将Win32窗口抽象为CWindow类,将消息循环抽象为CMessageMap。你可以在MSDN上阅读更多关于MFC的内容。

ATL/WTL是一个轻量级的C++模板库,它最初是COM的C++包装器,后来采用了一些来自MFC (因此共享相同的类名)的思想来支持Win32窗口。ATL窗口支持后来被拆分成WTL,然后作为开源发布。有关ATL窗口支持的文档,请参阅MSDN上的ATL Window Classes部分。

在托管C++中,您可以使用WinForms或WPF。虽然它们的文档和示例严重偏向于C#和VB.Net,但它们在MSDN上都有相当全面的介绍。如果你想探索这些UI平台,我个人也建议你看看C#。

你需要用到的:

当然,首先需要一个C++编译器。:-)

要使用Win32 API,您只需要Windows SDK和可选的Visual C++ Express

要使用MFC和ATL,您需要一个Visual Studio专业版或更高版本。可视C++速成版中不包括ATL和MFC。(ATL/MFC可能包含在WIndows软件开发工具包或其他我不知道的免费产品中。)

WTL8.0以free download的形式提供。您也可以从Source Forge WTL project获取WTL源代码。

要使用WinForms或WPF,您需要最新的.Net framework (好吧,技术上您需要任何.Net框架:-),还可以选择Visual C#/VB.Net Express。我不确定Visual C++速成版是否支持托管C++。

第三方选项:

有几个第三方C++库可以包装/抽象原生Win32 API。它们中的一些足够抽象,不仅可以为Windows开发UI,也可以为其他平台开发UI。据我所知,QtwxWidgets是一对,但从未使用过。

票数 1
EN

Stack Overflow用户

发布于 2009-05-06 00:26:36

我认为你的问题太宽泛了。试着把它分成更小的块,比如windows上GUI编程入门的问题,模式的问题,形成API的问题等等。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/827500

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档