0

我正在研究开发一款类似于 hackRUN 或 uplink 的基于文本的网络安全游戏,但我没有 GUI 编程经验,我怀疑我家里的任何人都想学习如何制作和运行 .cpp 文件。所以我需要创建一个具有自定义命令行的 GUI,类似于 Linux 或 Windows“cmd”。该地区有可用的资源吗?

4

2 回答 2

1

您可以创建一个与整个窗口大小相同的文本框控件,并对其进行自定义以使其看起来像一个控制台。例如,将背景设置为黑色,将字母颜色设置为白色等。

如何创建该文本框取决于您使用的 UI 框架。对于 C++,有 MFC 或托管的 WinForms,或者您可以使用 WPF 在 C# 中创建 UI 部分,并使用 C++/CLI 作为 C++ 和 C# 之间的桥梁。但是如果你想让它同时在 Windows 和 Linux 上运行,你可以使用 wxWidgets 或 Qt。

于 2012-11-06T17:06:24.193 回答
0

您可以通过从用户读取一行并在第一个空格(Python/pseudocode*)上拆分来模拟命令行:

for line in raw_input():
    command,arguments = line.split(' ',1)

例如带有参数read book的命令。readbook

然后,您可以使用自己的逻辑处理他们给出的命令。这种方法的优点是您可以通过桌面上的快捷方式(无论是 linux 还是 windows)运行游戏,并且操作系统控制台将支持交互。

有一类游戏称为“文字冒险”游戏,在图形有限或不存在时很流行,您可能会发现它特别相关。考虑使用现有的文本冒险引擎,这样您就可以专注于游戏本身,而不是文本输入和解析的机制。

* 考虑用 Python 或类似的脚本语言编写它,因为它们提供了对字符串等的直接处理。对于命令行风格的家庭游戏,您不太可能需要 C++ 的原始功能和复杂性。

于 2012-11-06T17:13:40.527 回答