Maison  >  Article  >  développement back-end  >  Comment changer la couleur de l'écho en langage Go

Comment changer la couleur de l'écho en langage Go

藏色散人
藏色散人original
2020-12-16 15:24:413125parcourir

La méthode de changement de couleur d'écho dans le langage go : ouvrez d'abord le fichier go correspondant ; puis attribuez une valeur à l'objet de couleur de police via la méthode "FontColor Color=Color{}" et enfin passez "func ColorPrint" ; (s string, i int ){}" méthode pour générer des polices colorées.

Comment changer la couleur de l'écho en langage Go

L'environnement de cet article : Système Windows 7, version Go1.11.2, cet article est applicable à toutes les marques d'ordinateurs.

Recommandé : "Tutoriel Golang"

Sortie couleur de la console Golang (pour Windows)

Langage Go : console Sortie colorée mots

Cette méthode n'est applicable qu'aux systèmes Windows

Scénarios d'application

Exécution de journaux qui doivent générer une grande quantité d'informations (généralement des serveurs , Système Windows)

Interface de débogage d'un certain type de client (généralement des jeux, notamment ceux avec des modules tiers)

Exemples de code

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)
}

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn