begin process at 2012 02 08 18:20:26
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive Delphi

 > 

Archives

 > 

Texte

 > 

Retour Chariot et carrés blancs


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Retour Chariot et carrés blancs

vendredi 23 août 2002 à 19:51:44 | Retour Chariot et carrés blancs

JuniorFr

Voila j'ai un problème avec les retours chariot (#13#10) lorsque je les appels plusieurs fois.
Voici une portion de code pour comprendre mon problème:

const
RetLgn = #13#10;

...

ButtonClick(Sender:TObject)
begin
Memo.SelText := 'Texte1'+RetLgn+Memo.SelText+RetLgn+'Text2'+RetLgn;
end;


Et bien dans ce cas lorsque j'appel une fois la procedure vie buttonClick, ca va. Mais quand je la'ppel une deuxième fois sans bouger la position du curseur, et bien j'ai pleins de petits carrés blancs qui s'affichent.. Je vois pas ce qui peut faire ca. D'autant que j'ai essayer en mettant ou non la convetion OLE..

Merci de bien m'aider a ce petit problème.

JuniorFr
samedi 24 août 2002 à 04:50:21 | Re : Retour Chariot et carrés blancs

ManChesTer

Administrateur CodeS-SourceS




-------------------------------
Réponse au message :
-------------------------------

Voila j'ai un problème avec les retours chariot (#13#10) lorsque je les appels plusieurs fois.
Voici une portion de code pour comprendre mon problème:

const
RetLgn = #13#10;

...

ButtonClick(Sender:TObject)
begin
Memo.SelText := 'Texte1'+RetLgn+Memo.SelText+RetLgn+'Text2'+RetLgn;
end;


Et bien dans ce cas lorsque j'appel une fois la procedure vie buttonClick, ca va. Mais quand je la'ppel une deuxième fois sans bouger la position du curseur, et bien j'ai pleins de petits carrés blancs qui s'affichent.. Je vois pas ce qui peut faire ca. D'autant que j'ai essayer en mettant ou non la convetion OLE..

Merci de bien m'aider a ce petit problème.

JuniorFr

ButtonClick(Sender:TObject)
begin
Memo.SelText := ''; Memo.SelText := 'Texte1'+RetLgn+Memo.SelText+RetLgn+'Text2'+RetLgn;
end;

Ca devrais régler ton problème.

Bon Coding...

ManChesTer


samedi 24 août 2002 à 16:25:01 | Re : Retour Chariot et carrés blancs

JuniorFr

Merci ManChesTer mais ca ne marche pas. J'avais oublier de préciser que je modifiais la position du curseur.
bon je vous met la portion plus complète de mon code:


const
RetLgn = #13#10;

type
TForm1 = class(TForm)
procedure Button1Click(Sender:TObject);
private
procedure SelectionText(Deb, Fin : string; Nb : integer);


procedure SelectionText(Deb, Fin : string; Nb : integer);
var
tmp : string;
begin
If Memo1.SelText = '' then
begin
Memo1.SelText := Deb + Memo1.SelText + Fin;
Memo1.SelStart := Memo1.SelStart - Nb;
end
Else
begin
tmp := Memo1.SelText;
Memo1.SelText := Deb + Memo1.SelText + Fin;
end;
end;

procedure Button1Click(Sender:TObject);
begin
SelectionText('Texte1'+RetLgn,RetLgn+'Texte2'+RetLgn,9);
end;


Le procedure SelectionText permet de positionner le curseur entre les deux chaines de caractères si il n'y a pas de sélection (sinon la sélection est remplacée).
Voila, toujours le même problème : quand je clique deux fois de suite sur le button1 sans sélection et sans bouger le curseur, j'ai de joli carrés blancs.
Merci

JuniorFr
dimanche 25 août 2002 à 04:39:01 | Re : Retour Chariot et carrés blancs

Nono40

Le problème vient du fait qu'après la première insertion, la position du curseur est placée entre le #13 et le #10. ( ce qui ne ce voit pas ). Il faut donc tester si le début de la sélection est un #10 pour déplacer le SelStart d'un caractère. Tu évites ainsi les rectangles noirs :

Begin
Tmp:=Memo1.Text;
If ((Memo1.SelStart+1)<=Length(Tmp))And (Tmp[Memo1.SelStart+1]=#10) Then Memo1.SelStart:=Memo1.SelStart+1;
If Memo1.SelText = '' then
begin
Memo1.SelText := Deb + Memo1.SelText + Fin;
Memo1.SelStart := Memo1.SelStart - Nb;
end
Else begin
Memo1.SelText := Deb + Memo1.SelText + Fin;
end;
End;

--- Nono du Moulin ---


-------------------------------
Réponse au message :
-------------------------------

Merci ManChesTer mais ca ne marche pas. J'avais oublier de préciser que je modifiais la position du curseur.
bon je vous met la portion plus complète de mon code:


const
RetLgn = #13#10;

type
TForm1 = class(TForm)
procedure Button1Click(Sender:TObject);
private
procedure SelectionText(Deb, Fin : string; Nb : integer);


procedure SelectionText(Deb, Fin : string; Nb : integer);
var
tmp : string;
begin
If Memo1.SelText = '' then
begin
Memo1.SelText := Deb + Memo1.SelText + Fin;
Memo1.SelStart := Memo1.SelStart - Nb;
end
Else
begin
tmp := Memo1.SelText;
Memo1.SelText := Deb + Memo1.SelText + Fin;
end;
end;

procedure Button1Click(Sender:TObject);
begin
SelectionText('Texte1'+RetLgn,RetLgn+'Texte2'+RetLgn,9);
end;


Le procedure SelectionText permet de positionner le curseur entre les deux chaines de caractères si il n'y a pas de sélection (sinon la sélection est remplacée).
Voila, toujours le même problème : quand je clique deux fois de suite sur le button1 sans sélection et sans bouger le curseur, j'ai de joli carrés blancs.
Merci

JuniorFr
dimanche 25 août 2002 à 18:56:46 | Re : Retour Chariot et carrés blancs

JuniorFr

Merci bien Nono, ca marche impec. Maintenant je connais l'astuce.
@++

JuniorFr


Cette discussion est classée dans : problème, blancs, chariot, carrés, retlgn


Répondre à ce message

Sujets en rapport avec ce message

Problème de mot de passe avec base de données ACCESS sous DELPHI [ par Fox ] Bonjour,Mon logiciel utilise une base de données ACCESS, le problème est que lorsque j'éxécute mon logiciel, une fenetre s'ouvre et me demande un mot Débutant : Problème boucle for... [ par the.snake.plisken ] Je débute et j'aimerais faire une boucle comme en visual basic du type : for a = 1 to 300 step 3 mais sous delphi, je n'arrive pas à placer le step qu problème d'impréssion [ par ferhat ] j'ai un problème d'impréssion qu'on j'utilise une imprimanteepson lq 2080 l'impréssion d'un état de format libre par example les dimontion de la page problème d'impréssion [ par ferhat ] j'ai un problème d'impréssion qu'on j'utilise une imprimanteepson lq 2080 l'impréssion d'un état de format libre par example les dimontion de la page URGENT : problème d'installation de composant [ par Henri ] problème d'installationBonjour,Je vous remercie de résoudre le problème suivant :Je voudrais installer un composant téléchargé sans son fichier *.pas Help 2 ! Ajout de retour chariot ! [ par toto ] Salut,Comment faire pour ajouter un retour chariot qd je veux dans un memo SVP ?MErci !toto Problème avec DBase, *.dbf et un OpenDialog [ par Zangdar ] Je n'arrive pas a trouver la commande avec un OpenDialog pour ouvrir un fichier DBase *.dbf pour qu'il l'insère dans une table DBGrid.Est-ce que kk1 c Problème lors de modification ! [ par Technoman ] Lorsque je veux modifier une table, j' obtiens ce message d' erreur : Edition impossible car un autre utilisateur a modifie l' enregistrement. Je fais ListView et MDI.... [ par PierreP ] voici mon problème : j'ai créé un ListView dans ma fenêtre principale, et je voudrais que lorsque l'on double-clique sur un élément de ce ListView cel problème avec une api [ par fabiin ] SalutEst-ce que kelk'un rencontre un problème lors de l'utilisation desetDCbrushcoloren Delphi 6Merci par avance@+Fabse


Nos sponsors


Appels d'offres

Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 5,585 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales