Colorer une partie d'un contrôle Label

Résolu
Stan631 Messages postés 17 Date d'inscription mardi 8 mars 2005 Statut Membre Dernière intervention 21 février 2007 - 6 févr. 2007 à 17:00
jmfmarques Messages postés 7666 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 - 6 févr. 2007 à 19:11
Bonjour,
Voila je souhaite faire une console du style de MS-DOS, le seul problème c'est que je voudrais qu'une partie du  texte du label s'afiche d'une autre couleur que l'ensemble du texte. Est-ce que cela est possible ou suis-je obligé d'utiliser un autre controle tel que le RichTextBox ?

Merci de votre aide

9 réponses

jmfmarques Messages postés 7666 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 27
6 févr. 2007 à 17:19
Il te suffit d'utiliser une picturebox, pour celà...
Tu en insères une sans bordures et tu y "dessines" ton texte (méthode Print)
Rien ne t'empêche à ce propos de ne pas utiliser du tout un autre contrôle et de dessiner ton texte directement sur ta forme, si ces "labels" ne doivent pas recevoir d'événement click.
cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
6 févr. 2007 à 17:26
c'est justement le RTB qu'il faut utiliser dans ce cas là. Regarde du coté de SelText.Forecolor (de mémoire, pas sur que ce soit exactement ça)

---- Sevyc64  (alias Casy) ---- # LE PARTAGE EST NOTRE FORCE #
cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
6 févr. 2007 à 17:28
Tu te complique la vie Jacques, le RichTextBox est parfait pour écrire en couleur

---- Sevyc64  (alias Casy) ---- # LE PARTAGE EST NOTRE FORCE #
cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 131
6 févr. 2007 à 17:33
Utiliser des labels pour faire une console, là je comprends plus tout !

Pareil pour utiliser un picturebox !!!!

Il vaut bien mieux dessiner sur la feuille comme tu le préconise plutôt qu'alourdir inutilement l'application avec des pictureboxes !

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Stan631 Messages postés 17 Date d'inscription mardi 8 mars 2005 Statut Membre Dernière intervention 21 février 2007
6 févr. 2007 à 17:33
Bein je ne suis pas vaiment chaud pour pour le RTB... Le PictureBox me conviendra tout a fait.

Merci beaucoup pour votre aide,
Stan
jmfmarques Messages postés 7666 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 27
6 févr. 2007 à 18:01
Attends, je te fait vite fait bien fait un petit exemple d'écriture sur ta form (beaucoup moins cher qu'une pictureBox)...
Me faut 3 minutes...
jmfmarques Messages postés 7666 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 27
6 févr. 2007 à 18:07
Voilà :
Une Form avec propriété AutoRedraw = True
une pictureBox (propriété autoredraw = true)

Un bouton de commande Command1

Private Sub Command1_Click()
   ecrire Me, "toto", 1500, 500, vbBlack, True
   ecrire Me, " titi", CurrentX, CurrentY, vbRed, False
   ecrire Me, "tata", 1500, 700, vbBlue, True
   ecrire Picture1, "coucou", 10, 10, RGB(90, 150, 20), False
End Sub


Private Sub ecrire(dans As Object, texte As String, oux As Integer, ouy As Integer, couleur As Long, reste As Boolean)
  CurrentX = oux
  CurrentY = ouy
  dans.ForeColor = couleur
  If True Then
    dans.Print texte;
  Else
   dans.Print texte
  End If
End Sub

Tu peux également définir la Font, sa taille, son style, etc... si tu le veux (utilise pour celà l'objet Font)
Stan631 Messages postés 17 Date d'inscription mardi 8 mars 2005 Statut Membre Dernière intervention 21 février 2007
6 févr. 2007 à 18:22
Merci c'est vrai qu'il est plus judicieux de l'ecrire dirrectement sur la form.
Je vais utiliser cette methode pour mon programme.

Merci encore
Stan
jmfmarques Messages postés 7666 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 27
6 févr. 2007 à 19:11
Ouillr (j'ait fait trop vite et tu pourrais un jour te demander ce qui arrive avec une picturebox !...)

Corrige vite en ajoutant ce que j'ai mis en gras, bien sur ! :

  dans.CurrentX = oux
  dans. CurrentY = ouy
Rejoignez-nous