【问题标题】:Build a GUI Application for Windows in C [closed]在 C 中为 Windows 构建 GUI 应用程序 [关闭]
【发布时间】:2013-11-21 09:13:21
【问题描述】:

我是 C 编程的新手。

我的程序按预期在控制台上运行,但现在我想为它构建一个非常简单的 Windows GUI 应用程序,坚持使用 C(只是一个显示一些文本的窗口和一个文件菜单)。

到目前为止,我已经在单个 .c 源代码中构建了所有内容,并在我的 Windows PC 中使用 MinGW gcc 作为编译器。

我刚刚下载了 Visual Studio 2013,但尝试使用它有点不知所措。我试图寻找替代方案,但我对所有术语(IDE、SDK、API 等)以及我真正需要做的事情感到困惑。

如果你只是指点一些东西让我阅读以清除我的思绪,我会非常满意。

非常感谢,如果这是一个不好的问题,我们深表歉意。

【问题讨论】:

  • 如何使用 VS 应用程序向导(假设它在 2013 年仍然存在)。如果您创建一个新项目,它会启动(对于 2010 年)。
  • 对于非常简单的 C GUI,我经常使用 Pelles C,它带有一个资源编辑器,您可以在其中设计对话框。虽然你必须手工完成很多管道工作 - 但这都是乐趣的一部分。
  • 阅读 Petzold Programming Windows,你会很高兴的。
  • IDE:集成开发环境 - 一种将编译器、编辑器、项目管理器、表单构建器、调试器工具……集于一身的软件。 SDK:软件开发工具包 - 围绕特定 API 构建的库包,可选(并且经常)包括用于促进开发过程的特定工具。 API:应用程序编程接口:您的程序可以通过它与另一个服务/应用程序交互的软件(库)。即:通过mysql_real_connect 连接到数据库,使用MySQL C API (#include <mysql.h>)
  • 如果您想要 GUI,请坚持使用 IDE。样板 wndprocs、消息处理和事件处理程序最好由已经工作的东西提供,(主要是:)。

标签: c winapi user-interface


【解决方案1】:

一个非常简单的 GUI 应用程序可能只使用 C 和 Windows API。

简而言之,你必须注册自己的 Window 类(RegisterClassEx),然后创建窗口(@98​​7654322@)。请注意,您的窗口类主要元素是它的 (WindowProc),它接收消息并且您必须实现它才能按照您的意愿行事。之后,您的 C 程序应该为 Windows 运行消息泵(PeekMessageDispatchMessage)来完成它的工作并允许与您的窗口进行交互。

有关这些函数,请参阅 MSDN 文档以获取帮助和示例。

【讨论】:

    【解决方案2】:

    你可以开始学习使用 C 语言开发 GUI 的 GTK 了。你可以在 http://www.gtk.org/development.php

    【讨论】:

    • 我会说 GTK 对于在 Windows 上开发 GUI 应用程序来说是一个糟糕的选择。
    • 你能告诉我你为什么这么认为吗?
    • 您是否曾在 Windows 上使用过 GTK 应用程序?体验很糟糕,GTK 项目似乎甚至不想提供更好的体验。当然,它有些作用,但它远非我自愿让用户服从的东西。无论如何,在为单个平台开发时,我宁愿坚持使用至少尝试正确模拟它们的本机小部件或包装器。如果您一般针对 Gnome 或 Linux,GTK 很好,但在 Windows 上我觉得它非常不合适。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-06-17
    • 2013-08-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-02-09
    • 2010-10-04
    相关资源
    最近更新 更多