仅使用C或C+开发用户界面+; 如何从底层语言开发用户界面,如C语言或C++语言?我们通常使用库或API制作GUI。但是我有兴趣了解这些库是如何实现的,以及它们是如何从仅仅编码创建窗口的。有很多东西可以让一个简单的GUI控件(如按钮)工作
几年前,我参与了一个开发Pacemaker程序员(定制计算机)的项目,我们需要编写GUI应用程序,但我们使用的操作系统只支持基于文本的输出。我们购买了一个名为ZINK应用程序框架的产品,它可以实现这一点,因为它被设计用于处理任何事情,我们可以访问源代码(我偷看了一下) 有一些简单的想法,你甚至不会去想。比如,如果按钮被另一个窗口部分覆盖,会怎么样。然后将按钮分为可见区域和隐藏区域,以便显示正确的零件。记住,屏幕只是一组像素。现在,我相信图形卡或像direct-X这样的库/协议可以为您做到这一点;但是,它必须完成,你想知道细节 锌是一个非常面向对象的设计,所以我描述的部分是窗口绘图组件的一部分,按钮不需要知道。而且,它使用了大量的继承(用C++编写)来构建一个又一个类;因此,一个按钮的全部功能遍布各地。例:按钮和复选框非常相似,只是它们的显示方式不同;因此,实现它们的类共享相同的基类仅使用C或C+开发用户界面+; 如何从底层语言开发用户界面,如C语言或C++语言?我们通常使用库或API制作GUI。但是我有兴趣了解这些库是如何实现的,以及它们是如何从仅仅编码创建窗口的。有很多东西可以让一个简单的GUI控件(如按钮)工作,c,user-interface,C,User Interface,几年前,我参与了一个开发Pacemaker程序员(定制计算机)的项目,我们需要编写GUI应用程序,但我们使用的操作系统只支持基于文本的输出。我们购买了一个名为ZINK应用程序框架的产品,它可以实现这一点,因为它被设计用于处理任何事情,我们可以访问源代码(我偷看了一下) 有一些简单的想法,你甚至不会去想。比如,如果按钮被另一个窗口部分覆盖,会怎么样。然后将按钮分为可见区域和隐藏区域,以便显示正确的零件。记住,屏幕只是一组像素。现在,我相信图形卡或像direct-X这样的库/协议可以为您做到这一点;
如果您真的感兴趣并且愿意花几个小时来理解它,那么应该有开源的Windowing/GUI代码供您参考。我想到了X-Windows。我希望我能向您展示锌代码,因为我相信它要简单得多。我读过的关于这个主题的有趣读物之一是wayland的文档。它解释了X窗口系统和wayland架构。首先,您可能感兴趣。您可以阅读该答案。