站长资讯网
最全最丰富的资讯网站

go语言如何改变回显颜色

go语言改变回显颜色的方法:首先打开相应的go文件;然后通过“FontColor Color=Color{}”方法给字体颜色对象赋值;最后通过“func ColorPrint(s string, i int){}”方法输出有颜色的字体即可。

go语言如何改变回显颜色

本文环境:Windows7系统、Go1.11.2版,本文适用于所有品牌的电脑。

推荐:《golang教程

golang控制台颜色输出(for windows)

Go语言:控制台输出有颜色的字

本方法只限用于 Windows系统

应用场景

需要输出大量信息的运行日志(一般是服务器,Windows系统的)

某类客户端的调试界面(一般是游戏,特别是有第三方模组的)

代码示例

package main   import (     "syscall" )   var (     kernel32    *syscall.LazyDLL  = syscall.NewLazyDLL(`kernel32.dll`)     proc        *syscall.LazyProc = kernel32.NewProc(`SetConsoleTextAttribute`)     CloseHandle *syscall.LazyProc = kernel32.NewProc(`CloseHandle`)       // 给字体颜色对象赋值     FontColor Color = Color{0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15} )   type Color struct {     black        int // 黑色     blue         int // 蓝色     green        int // 绿色     cyan         int // 青色     red          int // 红色     purple       int // 紫色     yellow       int // 黄色     light_gray   int // 淡灰色(系统默认值)     gray         int // 灰色     light_blue   int // 亮蓝色     light_green  int // 亮绿色     light_cyan   int // 亮青色     light_red    int // 亮红色     light_purple int // 亮紫色     light_yellow int // 亮黄色     white        int // 白色 }   // 输出有颜色的字体 func ColorPrint(s string, i int) {     handle, _, _ := proc.Call(uintptr(syscall.Stdout), uintptr(i))     print(s)     CloseHandle.Call(handle) }   func main() {     ColorPrint(`红色`, FontColor.red)     ColorPrint(`蓝色`, FontColor.blue)     ColorPrint(`白色`, FontColor.white) }

赞(0)
分享到: 更多 (0)