【发布时间】:2011-02-13 12:11:37
【问题描述】:
如何在 Win32 控制台应用程序中设置光标位置?最好避免制作句柄和使用 Windows 控制台功能。 (我整个上午都在这条黑暗的小巷里奔跑;它带来的问题比它解决的问题多。)我似乎记得我在大学时使用 stdio 时相对简单地做到了这一点,但我现在找不到任何如何做到这一点的例子.任何想法或建议将不胜感激。谢谢。
其他细节
这是我现在要做的:
COORD pos = {x, y};
HANDLE hConsole_c = CreateConsoleScreenBuffer( GENERIC_READ | GENERIC_WRITE, 0, NULL, CONSOLE_TEXTMODE_BUFFER, NULL );
char * str = "Some Text\r\n";
DWDORD len = strlen(str);
SetConsoleCursorPosition(hConsole_c, pos);
WriteConsole(hConsole_c, str, len, &dwBytesWritten, NULL);
CloseHandle(hConsole_c)
文本字符串str 永远不会发送到屏幕上。还有什么我应该做的吗?谢谢。
【问题讨论】:
-
问得好,这就是我在这篇文章中的原因,即使是高中生,在预显卡 PC(XT、AT 和 386)上使用 Turbo Pascal 也很容易做到这一点,作为最后一项任务,我能够创建一个界面,将详细信息输入到一个虚构的订票系统中......并且获得了 A+,为什么现在这么难?
标签: c++ console-application cursor-position