【发布时间】:2010-04-09 08:08:54
【问题描述】:
我正在开发一个带有过时、非常旧的 GUI 的项目(使用的 GUI 框架已有 10 多年的历史)
由于使用的编程语言是 Eiffel,几乎没有好的 GUI 开发库。尽管存在用于 C 库的包装器,但用它们包装 Qt 之类的东西并不容易。 当前的 GUI 框架使用 Windows API 来创建窗口、小部件等。但如前所述 - 它已经很老了。
现在我想了解更多关于如何直接使用 Windows API 来创建最先进的 GUI 的信息
有人可以推荐任何阅读材料吗?
【问题讨论】:
-
我认为“Windows API”和“艺术 GUI 的开始”不属于同一个句子。我很确定大多数原生 GUI 都是用 C# 编写的,而 Qt 确实是最好的选择。
-
但是因为我在 Eiffel 编程,所以我不能去 Qt。我无法包装它,因为它使用了一个特殊的预处理器,而且 Eiffels 包装功能相当有限。
-
@Michael Aaron Safyan - 您在 Windows 中看到的 每个 GUI 元素(Java swing 除外)都是使用“Windows API”创建的。各种 C# 库只是包装器。所以理论上你可以使用普通的 API 实现任何目标。
-
哦,是的。确实如此。在屏幕上绘图是通过 GDI 或 DirectX 进行的,这两者仍然是 Windows API 阵营中的佼佼者。我明白你的意思。 WPF 不使用 Windows 控件,而是绘制自己的小部件。
-
@shoosh,这不是我的意思...我的意思是 Windows(无论是 C API 还是 C# 包装器)根本不是“最先进的”。例如,在图形用户界面方面,Windows 一直落后于 Mac OS X……Mac 是 GUI 设计领域的真正创新者。当涉及到 GUI 以外的东西时,UNIX(Linux、Mac OS X、Solaris 等)往往处于领先地位……例如,许多 CS 研究往往是使用 Linux 进行的,所以“推通过与硬件供应商的 EOM 协议向消费者提供”,是的,但“最先进的”,不是。
标签: user-interface winapi