• 技术文章 >后端开发 >Golang

    go语言如何改变回显颜色

    藏色散人藏色散人2020-12-17 16:39:33原创748

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

    本文环境: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)
    }

    以上就是go语言如何改变回显颜色的详细内容,更多请关注php中文网其它相关文章!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:go语言
    上一篇:go语言用什么ide 下一篇:go语言常用命令有哪些
    PHP编程就业班

    相关文章推荐

    • go语言中make和new的区别是什么?• 有哪些项目是go语言的?• go语言如何设置定时器• go语言如何顺序生成数字• go语言用什么ide

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网