相关疑难解决方法(0)

在终端上打印颜色?

如何在Python中将彩色文本输出到终端?表示实体块的最佳Unicode符号是什么?

python unicode terminal ansi-colors

1929
推荐指数
51
解决办法
110万
查看次数

ENABLE_VIRTUAL_TERMINAL_PROCESSING和DISABLE_NEWLINE_AUTO_RETURN失败

关键是要在终端中制作这种小型多人游戏,应用一些基本的图形概念来掌握其工作方式及其背后的数学原理。

请注意,我希望这样做很有趣,并且我充分意识到有比使用终端更好的替代方法。

我需要一个可以写入的控制台,所以重点是要删除滚动条并将整个缓冲区打印到屏幕上。

但是由于字符返回到前一行的末尾时会出现回车,所以: 回车

这看起来很难看:

在此处输入图片说明

尝试了大约3个小时以通过SetConsoleMode进行此操作后,我不和谐地询问了它。

我得到的答案是:

void main( )
{
    auto h = GetStdHandle( STD_OUTPUT_HANDLE );

    DWORD mode = 0;
    GetConsoleMode( h, &mode );

    mode |= DISABLE_NEWLINE_AUTO_RETURN | ENABLE_VIRTUAL_TERMINAL_PROCESSING;

    puts( SetConsoleMode( h, mode ) ? "Win" : "Loss" );

    char * buf = new char[ 200*2 ];
    memset( buf, 0, 200*2 );
    memset( buf, 'A', 120*2 );
    std::cout << ( buf );

    getchar( );
}
Run Code Online (Sandbox Code Playgroud)

结果如下: 代码结果

最初,我尝试将其适应我的项目,但失败了。然后,我感到沮丧,最终创建了一个新项目,然后将粘贴的工作代码复制到该项目中。

您猜到了,它不起作用。

不工作

现在,我已经试过相当多的东西,我已经从Unicode改变了我的计划,以ANSI和背部,并做了mode = DISABLE_NEWLINE_AUTO_RETURN | ENABLE_VIRTUAL_TERMINAL_PROCESSINGmode |= DISABLE_NEWLINE_AUTO_RETURN | …

c++ windows terminal console winapi

4
推荐指数
1
解决办法
779
查看次数

标签 统计

terminal ×2

ansi-colors ×1

c++ ×1

console ×1

python ×1

unicode ×1

winapi ×1

windows ×1