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

VB 6 et antérieur Discussion :

[VB6] Ne pas faire de retour automatique dans un RichTextBox


Sujet :

VB 6 et antérieur

  1. #1
    Membre confirmé
    Inscrit en
    Décembre 2004
    Messages
    27
    Détails du profil
    Informations forums :
    Inscription : Décembre 2004
    Messages : 27
    Par défaut [VB6] Ne pas faire de retour automatique dans un RichTextBox
    J'utilise un richtextbox dans une de mes applications. Je définis les propriétés ScrollBar à Both pour avoir celle horizontal et vertical. Malheureusement, lorsque les caractères arrivent au bout de la ligne, le RichTextBox ne prend pas en compte le ScrollBar horizontal, il fait un retour de chariot automatiquement pour les lettres qui dépassent, sans couper le mot. Mais je veux qu'il fasse un retour de chariot seulement lorsque l'utilisateur le fait.

    J'ai regardé sur MSDN, mais je ne trouve rien.

    Merci d'avance pour les réponses.

  2. #2
    Membre éprouvé

    Profil pro
    Inscrit en
    Mars 2002
    Messages
    1 184
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 1 184
    Par défaut
    Si on regarde le texte proprement dit il ne doit pas y avoir de retour chariot.
    C'est l'affichage qui force le retour à la ligne (comme Word).
    Si on sauvegarde le texte et qu'on le rappelle dans un autre RicjTextbox de taille différente les fins de lignes ne seront plus au même endroit sauf pour ceux forcés par l'utilisateur

  3. #3
    Membre confirmé
    Inscrit en
    Décembre 2004
    Messages
    27
    Détails du profil
    Informations forums :
    Inscription : Décembre 2004
    Messages : 27
    Par défaut
    D'accord, merci des précisions. Seulement, il ne faut pas que ces fins de ligne soient là. (Comme dans Bloc-Note lorsque la case retour à la ligne automatique est enlevé).

    Alors, j'attends toujours des réponses.

  4. #4
    Membre éprouvé

    Profil pro
    Inscrit en
    Mars 2002
    Messages
    1 184
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 1 184
    Par défaut
    Je dois être un peu lkimité mais je n'ai rien compris.

    Si on fait l'essai de lire la chaine du RichTextBox du 1 au dernier caractère et que l'on affiche la valeur ASCII de chaque caractère y-a-t-il des chr(10) au niveau des fins de lignes ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    chaine = RichtextBox.Text
    For i = 1 To Len(Chaine)
    Msgbox(asc(mid(chaine, i, 1)))
    next

  5. #5
    Membre confirmé
    Inscrit en
    Décembre 2004
    Messages
    27
    Détails du profil
    Informations forums :
    Inscription : Décembre 2004
    Messages : 27
    Par défaut
    C'est que, ce n'est pas pour l'écriture dans le fichier qui pose le problème pour lire les ligne comme il faut, c'est que mon programme est une sorte de pseudo compilateur pour un langage qui n'en a pas (de pseudo compilateur). Alors, lorsque le scripteur écrit une ligne, il ne faut pas qu'elle revienne automatiquement à la ligne du dessous. Si VB faisait des retour de chariot automatique, y en a qui ragerais . Alors, il ne faut pas que la ligne revienne seule en arrivant au bout de la largeur du RichTextBox. Voila.

  6. #6
    Membre confirmé
    Inscrit en
    Décembre 2004
    Messages
    27
    Détails du profil
    Informations forums :
    Inscription : Décembre 2004
    Messages : 27
    Par défaut
    J'ai continué de chercher et j'ai enfin trouvé. La propriété RightMargin doit contenir un nombre en Twip (40 000 dans mon cas). Le controle inscrit des caractères jusqu'à ce que la longueur de la chaîne en Twip égale celle mis dans la propriété. J'avais déjà essayer cette propriété auparavant, mais elle n'avait pas fonctionner. Mais bon, l'essentiel, c'est qu'elle fonctionne maintenant. De plus, la propriété ScrollBar doit être soit à Both (3) ou à Horizontal, la propriété MultiLine à True et la propriété DisableNoScroll à False. Voilà, je crois que c'est à peu près sa.

    Merci pareil pour l'aide apportée.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 6
    Dernier message: 22/10/2009, 15h42
  2. Réponses: 4
    Dernier message: 16/10/2006, 12h17
  3. Réponses: 2
    Dernier message: 23/08/2006, 17h20
  4. [VB6]ne pas faire la différence Maj/min dans une chaine
    Par dbozec dans le forum VB 6 et antérieur
    Réponses: 4
    Dernier message: 14/04/2006, 12h32
  5. [Javascript]Comment faire un retour chariot dans une chaîne
    Par aragorns dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 20/09/2005, 11h24

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