初学者如何编写Windows GUI程序的综合教程

我正在尝试学习如何使用Visual Studio 2008编写C ++中的Windows GUI *程序,但是我还没有find更全面的初学者教程。

我发现的更全面的教程只是关于如何制作button,菜单等,或者只关于如何编写基本的C ++控制台程序。

我没有find的是一个更全面的教程初学者如何组合button,菜单等与C + +代码。

换句话说,我正在寻找问题的答案:如何链接菜单,button等到C ++代码?

如果您知道我在哪里可以find这个问题的答案,请将它们发布在这里,请!

注意:“graphics用户界面(GUI):包括诸如图标,面板和交互式窗口之类的东西,以使得用户能够通过点击鼠标来执行诸如打开文件和创build应用程序之类的操作”( intoweb.co.za/et -linux-tips.html )。


我目前正在阅读techotopia.com上的C#教程,它似乎不仅包含C#基础知识,还包含有关如何使用C#获取button,菜单的有用信息。 等等来实际做点事情。 我只是开始阅读教程,所以实际上它还是有用的,我还不知道。


我现在已经阅读了techotopia.com上的C#教程,并学习了一些关于如何在Windows窗体上实际控制的基本事实。 如果我早点知道我现在对C#的了解,在开始学习C ++之前,我很可能会select学习这门语言。

为什么每个C ++初学者的GUI程序教程都不是和techotopia.com上的教程相同的风格呢 ? 我看不出为什么初学者的C ++ GUI程序教程不能同时挤满基本的事实,甚至对像我这样的人解释最简单的事情,需要这样的解释来理解一个新的主题。 那么可能有这样的tuturials,只有我没有find他们。


现在是时候,我想简要列出一下我已经采取了哪些步骤来获得我今天所处的位置,以及一般的计算机技能,特别是编写计算机程序的能力。 我在这里发布这个清单,是为了那些想要擅长编写计算机程序,但不知道如何达到目标或误导自己的人,因为我一次又一次。 这不是最终的列表。 这只是对我工作的简短说明。

第1步。使用大量的计算机程序(文字处理程序,图像编辑程序以及其他您感兴趣的内容)查看计算机可以执行的操作。

第2步。用HTML和CSS编写网页。 HTML,超文本标记语言(Hypertext Markupup Language),用于告诉浏览器像段落的开始和结束,表格的结构以及在哪里包括图像。 CSS,Cascading Style Sheets,用来为网页添加文字大小和背景色等。

第3步。用PHP改进你的网页。 PHP,超文本预处理器,提醒了C#和C ++,并且是一种服务器端脚本语言。 服务器端意味着在网页被发送到访问者的浏览器之前就已经完成了一些事情,比如添加可以发送消息的代码。 PHP对于初学者比C#和C ++更容易。 另外,如果您已经编写了一些HTML页面,则可以逐渐向这些页面添加PHP。 换句话说,您可以学习如何在熟悉的环境中使用PHP。

第4步。学习C#。 提醒PHP和C ++。 初学者比PHP更困难,但比C ++更容易。 这是我现在的地方。 这些链接可能至less有一些用处:

  • 快速和肮脏指南迁移PHP代码到C#
  • 关于如何编写控制台程序的C#站C#教程
  • dotnetperls.com
  • 乔治·谢泼德的Windows窗体常见问题
  • C#angular落
  • csharp-examples.net/examples (非常短的代码片段)
  • 在msdn.microsoft.com上的Visual C# (当你不再是一个绝对的初学者时,可能会更有用;至less我是这样认为的)
  • 一些基本的C#教程 (由我编写而不是最好的教程,你可以find;但是,当我第一次开始学习C#时,我会发现一个类似于这个页面的页面)

第5步。学习C ++。 PHP和C#的提醒。 初学者比PHP和C#更困难。 允许程序员控制多于C#。 有人说它比C#更快,而其他人则没有。 这是我希望在一年左右的时间里。

由于新手程序员的路数尽可能多,所以这些步骤可能并不适合您。 不过,希望当你决定采取什么步骤来实现你的目标时,上面的列表至less对你有一些帮助。

如果你对编程有更多的了解,并且不同意上面的列表,请随意提供你自己的列表。 如果你这样做,我想你也应该解释你为什么认为你的名单更好。

Charles Petzold就此写了一本书。

我还没有读过,但是他的Win32 UI书被广为人知,所以对于初学者来说这是一个好消息。

正如你可能已经从其他答案和评论中可以看出的那样,术语“Windows窗体”是特定.NET技术的名称。

你似乎想问一个更多的问题,如何学习编写具有GUI(菜单,按钮,窗口等)的Windows程序。

没有一种方法可以编写Windows程序。 C ++本身并不知道有关Windows的任何信息。 相反,你会最终使用一些API或框架。 所以你需要做的是选择你想要使用哪一个,然后学习。

  • 在最低级别有原始的Windows API。 然而,它是一个非常类似C的界面,很少有人会推荐从这里开始。
  • 微软用于构建Windows程序的基于C ++的框架是MFC(微软基础类)。 它早在.NET和C ++ / CLI之前就已经被创建了。 年龄太大,有些方面不能跟时代相适应,有的人不喜欢。 但它仍然被支持和使用。 事实上,如果你有完整版本(不是快速版本)的Visual Studio,那么你已经有了MFC。
  • 最近还有其他各种C ++框架。 Qt和WxWidgets是几个更大的名字。 它们中的许多不仅为您提供了创建Windows程序的方法,而且还尝试抽象出所有操作系统特定的细节,以便您的代码可以在其他操作系统(如Linux或Mac)上编译。 在我看来,一旦你学会如何,这些工作往往比MFC更愉快。
  • 尽管它不是你所要求的,但许多人会推荐使用C#和.NET在Windows中制作GUI程序。 该语言和框架有一些很好的方面,使GUI编程更容易。

所以你可能需要做一些调查来确定你真正想要学习和使用的技术。 然后你可以去寻找合适的教程。

一个有点旧线程,但这里可以说是更新的Petzold替换:“Windows系统编程(第四版)(Addison-Wesley Microsoft技术系列)”