Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/141.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 在c+中从头开始创建GUI+;或组装_C++_User Interface_Assembly_Window - Fatal编程技术网

C++ 在c+中从头开始创建GUI+;或组装

C++ 在c+中从头开始创建GUI+;或组装,c++,user-interface,assembly,window,C++,User Interface,Assembly,Window,我在GUI库方面有过很多不好的经历 >我想知道如何在C++中从头开始创建窗口 我不是说win32,我的意思是基本上自己创建它,没有任何外部库 有没有办法用图片或其他东西来创建一个窗口 是的,我知道这有多难 我也在书中看到,在汇编< /p>中可以为C++编写库。 有没有办法在汇编或c中创建自定义gui++ 编辑: 我只瞄准窗户 PS:我想学习如何做的另一个原因是 我可能想实际创建一个操作系统。因此,我希望GUI具有…以便创建一个窗口,您需要与操作系统上当前存在的任何窗口系统进行交互。如果窗口管理

我在GUI库方面有过很多不好的经历

<> >我想知道如何在C++中从头开始创建窗口 我不是说win32,我的意思是基本上自己创建它,没有任何外部库

有没有办法用图片或其他东西来创建一个窗口 是的,我知道这有多难

我也在书中看到,在汇编< /p>中可以为C++编写库。 有没有办法在汇编或c中创建自定义gui++

编辑: 我只瞄准窗户

PS:我想学习如何做的另一个原因是


我可能想实际创建一个操作系统。因此,我希望GUI具有…

以便创建一个窗口,您需要与操作系统上当前存在的任何窗口系统进行交互。如果窗口管理器在内核空间中运行(如Windows中的情况),这将需要系统调用,或者用户空间窗口管理器(如X)需要某种进程间通信。要从头开始创建窗口,您需要了解这些窗口管理器的工作方式以及它们使用的协议。在X的情况下,找到关于协议如何工作的资源应该不会太难。在Windows的情况下,您唯一的选择可能是使用API,因为窗口管理器的内部是专有的。

您可以尝试仔细阅读源代码,以-我相信它完全是用汇编编写的,并且有一个GUI。当然,如果你试图编写一个在Windows、Linux等平台上运行的程序,这是行不通的。但是如果你想避免所有外部库,包括与Windows的接口,你必须在裸机上运行。

如果你疯狂到在汇编中做这件事,请继续安装,它可以实现windows/MessageBox等基本GUI。

通过调用“CreateWindowEx”Win32 API,“从头开始”在windows上创建窗口。

程序集?天哪,你为什么不直接用机器语言编写代码呢?唯一对这个项目有帮助的就是你的用户名。你想在什么操作系统上创建这个新的GUI?还是你也要从头开始写一个新的操作系统?@幸运的是,我有一些令人不安的消息要告诉你。您在GUI库方面有过不好的经验。您建议的解决方案是更改软件。正确的解决方案是更改开发人员。如果你不能使用GUI库,那么你肯定不能自己编写一个。@Jason汇编有什么问题,你可以用硬件做很多事情,它教你很多关于计算机和高级编程语言的知识,它非常简单,就是:指令参数1,参数2等等他们说他们不想与Win32接口…所以他们可能需要FASM进行非windows开发。我想他是说没有MFC之类的!windows开发。谢谢你的详细帖子:))你也写了一篇很好的详细帖子,但是templatetypedef做了我一直在寻找的工作。哦,不,这并不是“从头开始”创建窗口
CreateWindowEx
实例化现有的窗口类。如果你想从零开始,你应该从零开始。