IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Windows Forms Discussion :

Mettre un texte en gras


Sujet :

Windows Forms

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    81
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Janvier 2009
    Messages : 81
    Points : 55
    Points
    55
    Par défaut Mettre un texte en gras
    Bonjour,

    Voilà, mon problème est assez compliqué :

    Pour imprimer le contenu de plusieur TextBox placés dans un UserControl crée dynamiquement, j'enregistre les information dans un fichier avc la présentation exact qu'elle aura sur la page ( en gros je fais : Variable.WriteLine("Effectué le : " + textbox1.text)
    grâce a Variable.StreamWriter.

    Ensuite pour les placer sur la page a imprimer je relis le fichier en faisant ReadToEnd.

    Mais vu que ce que j'imprime est un bilan, j'aimerai mettre tous les titre (Efectué le :, Age : , etc...) en gras.

    Le problème est que je ne peut le faire dans la procédure PrintDocument1_PrintPage car je fais ReadToEnd.

    Donc la solution serai de le faire lors de l'enregistrement dans un fichier come par exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Variable.WriteLine(Font.Bold , "Effectué le : " + TextBox1.Text)
    Mais lorsque je fais cela il me marque "False" sur la ligne.

    Pourait on inséré un code avant le "Effectué le" que VB interprèterais comme "Je dois le mettre en gras" ?

    Ce n'est pas très clair mai compliquez à expliquer

    Merci d'avance
    Xavier

  2. #2
    Membre habitué Avatar de Epica84
    Profil pro
    Étudiant
    Inscrit en
    Décembre 2008
    Messages
    164
    Détails du profil
    Informations personnelles :
    Âge : 34
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2008
    Messages : 164
    Points : 188
    Points
    188
    Par défaut
    La propriété ".bold" est la seule que je connaissent ...

    Désolé

    Cordialement Christophe
    ARLES, du 02 au 05 Avril 2010, Féria de Pâques.

  3. #3
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Points : 39 749
    Points
    39 749
    Par défaut
    "Font.Bold" est équivalent à Me.Font.Bold : ça indique donc si la police de la fenêtre est en gras. Quand tu fais WriteLine(Font.Bold), ça écrit la valeur de la propriété Bold...

    Pour écrire du texte formaté dans un fichier, il faut l'écrire en HTML, PDF, Word, ou n'importe quel format qui conserve la mise en forme (ce qui n'est pas le cas du format texte)

    Je pense que le plus simple serait de modifier la façon dont tu passes les données à ton UserControl : il vaudrait mieux les passer sous forme d'un objet qui contient les valeurs des propriétés, plutôt que sous une forme "préformatée" qui ne permet pas d'extraire les informations facilement

  4. #4
    Expert éminent sénior Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 154
    Points : 25 072
    Points
    25 072
    Par défaut
    faudrait ptete voir aussi avec un richtextbox qui permet de faire des .rtf qui gèrent ce genre de mises en page
    un .txt ne gère pas la mise en page

    m'enfin au niveau de l'impression tu as aussi du code à écrire pour décoder ce le rtf, donc le mieux serait en effet de ne pas passer par un fichier, mais de faire un état basé sur tes données directement
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    81
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Janvier 2009
    Messages : 81
    Points : 55
    Points
    55
    Par défaut
    J'aimerais bien passer directement par mes données mais elles sont placé sur un UserControl qui est lui même crée dynamiquement, donc innaccessible. Je me sert donc d'un bouton placé directement sur le UserControl pour enregistrer les données temporairement dans un fichier à part.

    Pour les RTF je n'y connais rien

    Sinon je n'aurais qu'a mettre en majuscule, on diférenciera quand même :

    EFFECTUE LE : tel jour

    quoi que c'est mieux comme ça :

    Effectué le : tel jour

    ^^ Mais je n'ai pas vraiment de choix...

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    81
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Janvier 2009
    Messages : 81
    Points : 55
    Points
    55
    Par défaut
    Je vien d'essayer en faisant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Variable.WriteLine (< b >Effectué le :< / b > , TextBox1.text)
    et en enregistrant le fichier en ".html" mais en le lisant, c'est toujours en normal et TextBox1.text ne s'affiche même plus avec la virgule soulignée ci-dessus...

  7. #7
    Expert éminent sénior Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 154
    Points : 25 072
    Points
    25 072
    Par défaut
    Citation Envoyé par xav2303 Voir le message
    J'aimerais bien passer directement par mes données mais elles sont placé sur un UserControl qui est lui même crée dynamiquement, donc innaccessible. Je me sert donc d'un bouton placé directement sur le UserControl pour enregistrer les données temporairement dans un fichier à part.

    Pour les RTF je n'y connais rien

    Sinon je n'aurais qu'a mettre en majuscule, on diférenciera quand même :

    EFFECTUE LE : tel jour

    quoi que c'est mieux comme ça :

    Effectué le : tel jour

    ^^ Mais je n'ai pas vraiment de choix...


    si tu arrives à mettre tes données dans un fichier texte, c'est bien que tu as accès aux données, donc tu peux directement les imprimer sans passer par un fichier !
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  8. #8
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    81
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Janvier 2009
    Messages : 81
    Points : 55
    Points
    55
    Par défaut
    Euh...Je viens de vérifier c'est trop bête ...

    Mais ça va être long de dire a chaque fois

    e.Graphique.DrawString("Effectué le" [...] , 0 , 10) car il faut précisé l'endroit de placement à chaque fois ! surtout qu'en faisent comme ça je devrais faire 2 fois "e.graphique..." pour avoir selement Effectué le : en gras....

  9. #9
    Expert éminent sénior Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 154
    Points : 25 072
    Points
    25 072
    Par défaut
    je ne pense pas sur que .net intègre une fonctionnalité d'impression de fichier autre que les .txt de toute facon

    donc y a pas 36 solutions ...
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

Discussions similaires

  1. Réponses: 1
    Dernier message: 25/02/2010, 08h20
  2. Mettre un texte en gras
    Par loic20h28 dans le forum Eclipse Java
    Réponses: 4
    Dernier message: 14/10/2009, 01h06
  3. Mettre du texte en gras
    Par fmris dans le forum Excel
    Réponses: 5
    Dernier message: 21/09/2008, 10h15
  4. [Tableaux] Mettre un text en gras dans "array"
    Par twa4ever dans le forum Langage
    Réponses: 1
    Dernier message: 31/03/2008, 10h04
  5. [c++] Mettre un texte en gras dans un static
    Par Tetlis dans le forum Windows
    Réponses: 3
    Dernier message: 30/07/2006, 21h57

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo