Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/71.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++ 在没有GUI设计器的情况下实现GUI的最佳方法是什么?_C++_C_User Interface_Winapi - Fatal编程技术网

C++ 在没有GUI设计器的情况下实现GUI的最佳方法是什么?

C++ 在没有GUI设计器的情况下实现GUI的最佳方法是什么?,c++,c,user-interface,winapi,C++,C,User Interface,Winapi,如果有人不想使用IDE(仅仅是编辑器、编译器和调试器),那么手工实现GUI的最佳方式是什么 我想一个WINAPI应用程序,在C或C++中。 < P>如果你有Windows API,你将使用文本编辑器在代码中创建UI部件。不涉及XAML或其他中间语言或标记。如果你想做布局,你可以用铅笔和纸或者像Visio这样的图形工具来模拟用户界面,这样你就可以计算出你想要的一切 或者,你可以把生锈的螺丝刀插在你的小脚趾和小脚趾甲之间。这可能不会那么痛苦 编辑:其他海报也谈到了使用其他框架,如Qt或使用布局面板等

如果有人不想使用IDE(仅仅是编辑器、编译器和调试器),那么手工实现GUI的最佳方式是什么


我想一个WINAPI应用程序,在C或C++中。

< P>如果你有Windows API,你将使用文本编辑器在代码中创建UI部件。不涉及XAML或其他中间语言或标记。如果你想做布局,你可以用铅笔和纸或者像Visio这样的图形工具来模拟用户界面,这样你就可以计算出你想要的一切

或者,你可以把生锈的螺丝刀插在你的小脚趾和小脚趾甲之间。这可能不会那么痛苦


编辑:其他海报也谈到了使用其他框架,如Qt或使用布局面板等。但问题是关于Windows API和C/C++的。这让我们回到了过去。不是“编程窗口”,而是“编程窗口”之类的东西。在它的时代很棒,这几乎是15年前的事情,但如果没有非常非常好的理由,我永远不会回去

如果您只有Windows API,那么您将使用文本编辑器在代码中创建UI小部件。不涉及XAML或其他中间语言或标记。如果你想做布局,你可以用铅笔和纸或者像Visio这样的图形工具来模拟用户界面,这样你就可以计算出你想要的一切

或者,你可以把生锈的螺丝刀插在你的小脚趾和小脚趾甲之间。这可能不会那么痛苦


编辑:其他海报也谈到了使用其他框架,如Qt或使用布局面板等。但问题是关于Windows API和C/C++的。这让我们回到了过去。不是“编程窗口”,而是“编程窗口”之类的东西。在它的时代很棒,这几乎是15年前的事情,但如果没有非常非常好的理由,我永远不会回去

GUI编辑器所做的就是编写代码,反映您在表单上放置的那些项目的属性。如果没有GUI编辑器,您将需要自己编写所有代码。

GUI编辑器只需编写反映您在表单上放置的项目属性的代码。如果没有GUI编辑器,您将需要自己编写所有代码。

我不确定是否回答了您的问题,但我通常使用铅笔和纸设计GUI

我画出界面的布局,然后在暗线中围绕DIV标记和如何将控件集组合在一起绘制框


然后我从中编码HTML。我发现在某些情况下使用铅笔比使用鼠标更有效。

我不确定是否回答了你的问题,但我通常使用铅笔和一张纸设计GUI

我画出界面的布局,然后在暗线中围绕DIV标记和如何将控件集组合在一起绘制框


然后我从中编码HTML。我发现在某些情况下使用铅笔比使用鼠标更有效。

您可以手动编写对话框的.rc文件。对于主窗口框架和视图等,您需要手工编写代码。如果您使用Visual Studio的向导之一在项目中存根,则可以在该代码上获得跳转启动。

您可以手动编写对话框的.rc文件。对于主窗口框架和视图等,您需要手工编写代码。如果您使用VisualStudio的向导在项目中存根,您可以在该代码上获得一个跳转启动。

在纸上或任何您想要的地方模拟它

精确的边距,宽度,左对齐

一旦你对屏幕上每个元素的位置有了一个精确的概念,你就“只”需要翻译它


这是一种惩罚还是什么?

在纸上或任何你想要的地方嘲笑它

精确的边距,宽度,左对齐

一旦你对屏幕上每个元素的位置有了一个精确的概念,你就“只”需要翻译它


这是惩罚还是什么?

我认为大多数答案都是完全错误的。如果没有使用铅笔和纸的GUI编辑器,您就不能给出精确的坐标,这太糟糕了

我曾经用手创建表单,但是我用,用手创建表单非常简单,只需添加一个sizer和控件


在Jorg的wxWidgets中也有各种各样的符号来实现这一点,您只需在一行中指定表单布局,它就会生成代码。我找不到链接。

我觉得大多数答案都是错的。如果没有使用铅笔和纸的GUI编辑器,您就不能给出精确的坐标,这太糟糕了

我曾经用手创建表单,但是我用,用手创建表单非常简单,只需添加一个sizer和控件


在Jorg的wxWidgets中也有各种各样的符号来实现这一点,您只需在一行中指定表单布局,它就会生成代码。我找不到链接。

开发GUI的体验与您使用的图形工具包截然不同。在Windows中,最典型的(我认为是低级的)是MFCAPI,但这不是唯一的可能性,因为您还可以使用GTK+或Tk等工具使用更高级的方法。 当然,您需要在Windows上安装这些库

例如,在GTK+中,您可以使用XML文件来描述大部分GUI,这可能比硬编码更容易。此外,还可以创建VBox对象并向其添加其他对象,对象将自动定位在上一个对象的下方,而无需测量和描述其XY位置

在没有可视化编辑器的情况下制作GUI是完全可能的(我已经制作了一些),但是拥有可视化编辑器几乎总是一个很大的优势。但是,在实际技术中,最好使用更高级别的可用工具