Maison >développement back-end >C++ >Comment définir des couleurs de texte personnalisées dans une application console C# ?

Comment définir des couleurs de texte personnalisées dans une application console C# ?

Patricia Arquette
Patricia Arquetteoriginal
2025-01-04 00:39:07381parcourir

How to Set Custom Text Colors in a C# Console Application?

Couleur du texte personnalisée dans l'application console C#

En C#, il est possible de modifier la couleur du texte dans la fenêtre de la console. Les couleurs de la console par défaut sont limitées aux valeurs d'énumération ConsoleColor prédéfinies, qui n'incluent pas l'orange.

Cependant, il est possible de définir une couleur de texte personnalisée en accédant directement à l'API Windows. Pour y parvenir, vous pouvez utiliser la fonction SetConsoleScreenBufferInfoEx pour modifier les attributs de couleur du tampon d'écran de la console.

À l'aide de l'API native

Pour définir une couleur spécifique de la console sur une couleur RVB, vous pouvez utilisez la méthode SetColor dans la classe SetScreenColorsApp :

public static int SetColor(ConsoleColor color, uint r, uint g, uint b)
{
    // Code to modify the console screen buffer info and set the specified color
}

Vous pouvez ensuite utiliser cette méthode pour définir la couleur du texte sur orange, par exemple :

SetColor(ConsoleColor.Gray, 255, 165, 0);

Utilisation des méthodes d'extension C#

Une autre approche consiste à utiliser des méthodes d'extension C# pour simplifier le processus de définition des couleurs de texte personnalisées. Voici un exemple de méthode d'extension qui vous permet de définir la couleur du texte et la couleur d'arrière-plan à l'aide d'objets Color :

public static class ConsoleColorExtensions
{
    public static void SetTextColor(this ConsoleColor[] color, Color foregroundColor)
    {
        // Code to set the foreground color
    }

    public static void SetBackgroundColor(this ConsoleColor[] color, Color backgroundColor)
    {
        // Code to set the background color
    }
}

Vous pouvez ensuite utiliser ces méthodes d'extension pour définir la couleur du texte et la couleur d'arrière-plan comme suit :

Console.SetTextColor(Color.Orange);
Console.SetBackgroundColor(Color.Black);

Limitations

Il est important de noter que la possibilité de définir des couleurs de texte personnalisées est limitée à la plate-forme Windows. Si vous utilisez C# sur d'autres plates-formes, vous devrez peut-être explorer les options spécifiques à la plate-forme pour modifier la couleur du texte.

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