Colorier des onglets

Le
The Best Poster
Bonjour,

J'ai développé une application qui utilise plusieurs onglets pour la
saisie des données en entrée, et pour l'affichage des résultats.

J'aimerais pouvoir donner une couleur différente à la zone supérieure
de chaque onglet (là où s'affiche le nom de l'onglet) afin de rendre
plus facile le choix de l'onglet par l'utilisateur.

Je ne sais pas si cela est possible, et comment le faire ?

Merci de vos conseils.

--
"Plaire à tout le monde et à personne, c'est pas donné à n'importe
qui." (Jean ferrat)
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
The Best Poster
Le #21483512
The Best Poster avait écrit le 24/03/2010 :
Bonjour,

J'ai développé une application qui utilise plusieurs onglets pour la saisie
des données en entrée, et pour l'affichage des résultats.

J'aimerais pouvoir donner une couleur différente à la zone supérieure de
chaque onglet (là où s'affiche le nom de l'onglet) afin de rendre plus facile
le choix de l'onglet par l'utilisateur.

Je ne sais pas si cela est possible, et comment le faire ?

Merci de vos conseils.



Voici la réponse :

MyForm est le formulaire où se trouvent les TabControls.

private void MyForm_Load(object sender, EventArgs e)
{

// Allow customizing panels colors
this.tabPanel.DrawMode = TabDrawMode.OwnerDrawFixed;
this.tabPanel.DrawItem += new
DrawItemEventHandler(tabPanel_DrawItem); // Function handle for
changing color of panels
}


void tabPanel_DrawItem(object sender, DrawItemEventArgs e)
{
Font f = new Font("Microsoft Sans
Serif",10,FontStyle.Bold);

SolidBrush b = new SolidBrush(Color.Black);

// Get color from selected panel
SolidBrush sb;
sb = new
SolidBrush(this.tabPanel.TabPages[e.Index].BackColor);


e.Graphics.FillRectangle(sb, e.Bounds);
e.Graphics.DrawString(this.tabPanel.TabPages[e.Index].Text,
f, Brushes.White,e.Bounds.X + 1, e.Bounds.Y + 3);

}

--
"Plaire à tout le monde et à personne, c'est pas donné à n'importe
qui." (Jean ferrat)
Publicité
Poster une réponse
Anonyme