在C#中重新定义控制台调色板 [英] redefining Console colour palette in c#
本文介绍了在C#中重新定义控制台调色板的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
可能有人请告诉我怎么可以重新定义控制台的调色板在C#?
Could somebody please tell me how can I redefine the colour palette of the Console in C#?
推荐答案
是的,这是可能的。你需要一堆的P / Invoke的声明使用这样的代码:
Yeah, it's possible. You'll need a bunch of P/Invoke declarations to use code like this:
CONSOLE_SCREEN_BUFFER_INFOEX info;
info.cbSize = sizeof(info);
HANDLE hConsole = GetStdHandle(STD_OUTPUT_HANDLE);
GetConsoleScreenBufferInfoEx(hConsole, &info);
info.ColorTable[14] = RGB(255, 128, 0); // Replace yellow
SetConsoleScreenBufferInfoEx(hConsole, &info);
SetConsoleTextAttribute(hConsole, FOREGROUNDINTENSITY | FOREGROUND_RED | FOREGROUND_GREEN);
访问pinvoke.net或使用P / Invoke的互操作助理,以获得您的声明需要使用此代码。
Visit pinvoke.net or use the P/Invoke Interop Assistant to get the declarations you need to use this code.
这篇关于在C#中重新定义控制台调色板的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文