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

Delphi Discussion :

Chaine de caractères dans une zone rectangulaire


Sujet :

Delphi

  1. #1
    Nouveau membre du Club
    Inscrit en
    Juin 2006
    Messages
    39
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 39
    Points : 27
    Points
    27
    Par défaut Chaine de caractères dans une zone rectangulaire
    Salut tout le monde,

    je travaille sur des états à imprimer. Le problème étant que certaines des chaines de caractères sont censées s'inscrire dans une zone rectangulaire et sur plusieurs lignes.
    Le problème c'est qu'avec TextOut je ne peux pas limiter l'impression de mes chaines de caractères et je ne peux pas écrire sur plusieurs lignes automatiquement. Avec TextRect je ne peux écrire que sur une seule ligne en délimitant une zone et sans passage automatique à ligne non plus.. J'aurais souhaité savoir s'il existait des fonctions permettant de faire une mise en page automatique en fournissant les dimensions de la zone ainsi que la position du cadre. La chaine de caractère serait alors positionné avec des sauts à la ligne lorsque je serais hors du cadre.
    J'ai pensé écrire une fonction qui prendrait en paramètre la hauteur, la largeur et la position de la zone. Puis j'inscrirais caractère après caractère mes stringd et je passerais à la ligne lorsque je sortirais de ma zone. Mais cette méthode présente 2 gros inconvénients, le plus gros étant que mes mots peuvent être coupés (peut être faudrait il dans ce cas voir pour écrire mot par mot et non pas caractère par caractère) et ensuite celà augmente considérablement le temps d'impression.

    Merci d'avance

  2. #2
    Membre émérite Avatar de edam
    Homme Profil pro
    Développeur Delphi/c++/Omnis
    Inscrit en
    Décembre 2003
    Messages
    1 894
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur Delphi/c++/Omnis
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2003
    Messages : 1 894
    Points : 2 770
    Points
    2 770
    Par défaut
    j'ai déjà eu ce problém, voila un petit code à testéj'ai pas delphi sous la main)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
     
    Procedure decoupe(s:string;lh,ll:integer;canv:TCancas;var resu:TStrings);
    var   
         i:integer;
         m,n:string;
    begin
           m:='';n:='';
          with canv do
             begin
                i:=1;resu.clear;
                while i<length(s) do
                  begin
                    m:='';    
                    while (i<length(s)) and (canvas.length(m+n+s[i])<lh) do
                       begin
                          n:=n+s[i];
                          if s[i]=' ' then m:=m+n;
                       end; 
                    resu.add(m);
                 end; 
             end;
    end;
    procedure appelproc;
    var  t:TStrings;
    begin
           t:=TStringList.creat; 
           decoupe('blab lalalalal',0,0,printer.canvas,t);
            .......
           t.clear; 
    end;
    ce code a testé , safait lengt que je l'ai fait

Discussions similaires

  1. [MySQL] Chaine de caractères dans une zone de texte
    Par l_nico dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 12/05/2010, 16h42
  2. [MFC] Insertion d'une chaine de caractère dans une BD
    Par julien.nasser dans le forum MFC
    Réponses: 2
    Dernier message: 20/04/2006, 15h19
  3. Récupérer une chaine de caractère dans une page
    Par BrunS dans le forum Langage
    Réponses: 3
    Dernier message: 15/11/2005, 14h28
  4. [String]Recherche d'une chaine de caractères dans une autre
    Par Crazyblinkgirl dans le forum Langage
    Réponses: 3
    Dernier message: 29/07/2004, 11h51
  5. recherche d'une chaine de caractère dans une données text
    Par jdeheul dans le forum SQL Procédural
    Réponses: 2
    Dernier message: 17/06/2004, 16h35

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