在C++中如何控制光标?

fopwolf 2004-04-18 04:32:55
[求助]在C++中如何控制光标?

如果程序在1、3、5行输出字符,如何把光标移至2、4行再输出字符。

...全文
338 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
rorot 2004-04-19
  • 打赏
  • 举报
回复
vc6下编译
rorot 2004-04-19
  • 打赏
  • 举报
回复
#include <windows.h>
#include <winbase.h>
#include <iostream>

using namespace std;

int main()
// 光标定位
{
HANDLE hStdout;
// 光标位置
COORD cursorPos;

// 标准输出句柄
hStdout = GetStdHandle(STD_OUTPUT_HANDLE);

cout << "No1. lines....\n\n";
cout << "No3. lines....\n\n";
cout << "No5. lines....\n" << endl;

// 等待2秒
Sleep(2000);
// 设置光标
// 第2行输出
cursorPos.X = 0;
cursorPos.Y = 1;
SetConsoleCursorPosition( hStdout, cursorPos );
cout << "No2. lines...." <<endl;


// 第4行输出
cursorPos.X = 0;
cursorPos.Y = 3;
SetConsoleCursorPosition( hStdout, cursorPos );
cout << "No4. lines...." <<endl;

// 第6行输出
cursorPos.X = 0;
cursorPos.Y = 5;
SetConsoleCursorPosition( hStdout, cursorPos );

// 释放句柄
CloseHandle(hStdout);
return 0;
}
古布 2004-04-18
  • 打赏
  • 举报
回复
Windows下的SetCaretPos( ),SetCursorPos(),
cycxp4363 2004-04-18
  • 打赏
  • 举报
回复
window(100,100,639,479);这里的参数可以改变的,只要象上面那样作(tc++3.0)编译过
cycxp4363 2004-04-18
  • 打赏
  • 举报
回复
这个方法可能不是很好但是可以做到再屏幕上的任一位置输出:
window(100,100,639,479);
gotoxy(25,17);
cout<<_score<<endl;
csbsds 2004-04-18
  • 打赏
  • 举报
回复
我最近也在思考这个问题!同一行的光标就好处理!
期待高手现身!
claider 2004-04-18
  • 打赏
  • 举报
回复
Windows下有几个函数,好像是*Console*什么的,*为通配符,可能还包含Cursor或者Icon,你可以在msdn里面搜索一下。

64,637

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧