将文本输出到窗口控制台。 C ++

时间:2016-09-12 04:40:10

标签: c++ text

所以目前我正在创建一个基本游戏。

它有一个背景和一个玩家角色(都是bmp' s),它们使用wc.Display函数调用成功输出到窗口控制台。

我很好奇向窗口控制台显示文本的方法,即健康,得分或玩家离开了多少生命,例如吃豆人,乒乓球等。就像我的精灵在我的游戏窗口上的情况一样,我怎么做文本?

我知道cout的方法,但我不认为它与用于在游戏屏幕上显示文字的方法相同。

非常感谢任何帮助。

3 个答案:

答案 0 :(得分:0)

假设你实际上并不是指控制台,因为你已经知道如何做精灵而不是文字:

RECT where; // populate this
HGDIOBJ OldFont;
BeginPaint(hWnd, &hDC);
OldFont = SelectObject(hDC, yourfont);
DrawText(hDC, "text", 4, &where, 0);
SelectObject(hDC, OldFont);
EndPaint(hWnd, &hDC);

答案 1 :(得分:0)

屏幕导向的文本i / o不在标准库的功能范围内。

它非常依赖系统。

但是,您可以使用相当便携的库,例如 ncurses

旧文本终端支持转义序列用于光标定位等,这些都是标准化的“ANSI转义序列”。

在Unix-land和Windows 10及更高版本中你可以使用它们,但这并不包括单字符(无缓冲)输入。

所以你需要像ncurses这样的东西。

对于Windows,您应该通过Windows API函数考虑基于wchar_t的直接控制台i / o,以便能够输出非ASCII字符。

答案 2 :(得分:0)

我的头文件中添加了一个特定的功能,允许我将文本输出到屏幕。直到我去搜索它,我才知道它存在。谢谢你的帮助。