有没有一种方法可以使用图形在C++中逐个字母地打印控制台中的文本
Is there a way you can print text in console letter by letter in C++ using graphics?
我正在尝试用C++制作一个使用图形的游戏。我正在使用代码块。我试图制作一个屏幕,玩家告诉他/她的名字或用户名。我想让他们印刷的每一封信都出现,但我做不到。这就是我到目前为止所做的
void user_engleza()
{
cleardevice();
while(true)
{
char s[101];
ifstream f("nume.in");
ofstream g("nume.in");
bool ok = false;
char litera[1], nume[101];
int x, y, j = -1;
settextstyle(6, HORIZ_DIR, 7);
outtextxy(300, 100, "Your name will be");
x = 700;
y = 150;
while(ok == false)
{
cin >> litera[0];
g << nume[++j];
outtextxy(x, y, litera);
y = y + 100;
if(GetAsyncKeyState(VK_RETURN)) ok = true;
}
}
}
感谢您的帮助。
不,您不能将BGI用于控制台
BGI使用VGA图形视频模式,MS-DOS控制台使用VGA文本视频模式。这些都不一样——它们甚至使用不同的内存段。有关更多信息,请参阅:
- 程序集8086中的图形模式
在Windows中,控制台不是一个文本窗口,而是它的模拟窗口。如果你获得了它的句柄,你可以访问它的画布并在上面渲染图形内容,但BGI不可能做到这一点,因为它是从MS-DOS模拟旧的BGI窗口。
如何在BGI窗口(无控制台(上使用BGI渲染文本。若要一次渲染一个字符,需要传递长度为1的字符串,而不是字符。像这样的东西:
char c[2]={' ',0}; // null terminanted 1 char string
c[0]='A'; // any character you want
outtextxy(x,y,c);
CCD_ 1看起来也很多。我认为y+=20
或类似的字符之间的100像素太多了,你的窗口有多大?
相关文章:
- 如何让控制台输出覆盖控制台而不是纯文本输出?
- 反转从控制台读取的文本
- 带有 std::cout 的多线程控制台文本动画
- 以原子方式将彩色文本写入 Windows 中的控制台
- 如何将控制台输出中的所有内容复制到文本文件?
- 有没有办法将 getline() 与外部文本文件一起使用,然后重新获得 cin 的控制权以从控制台获取输入?
- 将文本发送到输入行控制台 C++
- Visual C 关闭文本文件和打开新的控制台窗口
- 如何将控制台输出的文本颜色更改为红色,但如果从Powershell或CMD运行,背景将保持相同的颜色
- 如何在 Windows 中将 C/C++ 控制台文本设置为粗体和斜体
- 如何将文本输出到另一个已打开C 的控制台
- C 日食控制台编码纯文本作为其他字符
- 如何在运行控制台时更改文本
- 将可视C++控制台输出写入或复制到文本文件
- 在文本文件中搜索字段名称,并将所有后续行返回到控制台 - C++
- 如何让控制台在输入一行文本时输出某些内容
- 如何更改代码块中的文本颜色和控制台颜色
- 控制台程序读取文本文件行,做Levenstein并输出一个文本文件
- 将所有控制台输出数据保存到新的文本文件C++
- 如何在控制台项目中重写一行文本?c++