1

我在使用 xcode 的 mac 上使用 C 和 C++ 编程已经有一段时间了,但是,我不知道如何超越我一直在编写的简单文本输入/输出程序。我了解这些原则,但事实证明很难弄清楚这些原则。

我听说用于 C++ 的 qt 或 gtk+ 之类的库是最好的选择,但大多数书籍和教程都侧重于 Windows 或 linux 编程,并且没有一开始说明这些库是如何工作的。我想真正了解幕后发生的事情;我想了解 GUI 如何在尽可能低的级别上工作,即使在汇编和机器代码级别也是如此。有谁知道从哪里开始?谢谢。

4

1 回答 1

2

如果您使用 OpenGL,您可以获得关于图形硬件如何工作的非常低级的知识,以便生成您想要的各种 UI 元素。当然,您必须自己完成所有这些工作。从设计各种 UI 项目,到创建像素缓冲区和纹理映射,再到使用帧缓冲区。这部分也是跨平台的。

您还可以自己处理用户交互和界面逻辑(轮询鼠标/键盘等)。编写更复杂的小部件可能需要一些时间,但至少您将自己完成所有工作,这将使您对 GUI 工具包的工作方式有相当多的了解。

GLUT 随大多数 Mac 一起提供,并为您提供入门的基本要素(您至少有一个窗口 :))

https://developer.apple.com/library/mac/#samplecode/glut/Introduction/Intro.html

GLUT 库支持以下功能:

  1. 用于 OpenGL 渲染的多个窗口。
  2. 回调驱动的事件处理。
  3. 一个“空闲”例程和计时器。
  4. 用于生成各种实体和线框对象的实用程序。
  5. 支持位图和笔画字体。
  6. 各种窗口管理功能。

http://www.opengl.org/resources/libraries/glut/glut_downloads.php

于 2012-12-27T19:35:04.563 回答