Tout est dans le titre, je cherche une fonction intégré à Delphi (5 Entreprise) pour mettre la permière lettre des mots d'une chaine en majuscule
Merci.
Tout est dans le titre, je cherche une fonction intégré à Delphi (5 Entreprise) pour mettre la permière lettre des mots d'une chaine en majuscule
Merci.
fastoche :
var chaine : string;
chaine[1] := uppercase(chaine[1]);
ca c'est quand il n'y a qu'un mot dans une chaine moi je veux le faire sur une chaine de X mots...
Il n'y a pas de fonction toute faite dans Delphi, il te faudra la programmer..
je pense que quelqu'un l'a déjà fait. On est vendredi, moi j'ai pas envie de bosser.![]()
Salut,
Essayes de regarder ce code (je l'ai testé et il marche très bien) :A+,
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 procedure TForm1.Edit2Change(Sender: TObject); var OldChange: TNotifyEvent; OldStart: Integer; begin with (Sender as TEdit) do begin OldChange := OnChange; OnChange := nil; OldStart := SelStart; if ((SelStart > 0) and (Text[SelStart - 1] = ' ')) or (SelStart = 1) then begin SelStart := SelStart - 1; SelLength := 1; SelText := AnsiUpperCase(SelText); end; OnChange := OldChange; SelStart := OldStart; end; end;
Seb.
Bonjour,
Il n'y a pas de fonction intégrée à Delphi permettant de le faire.
J'utilise cette fonction.![]()
A+
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 function MettreMajusculePremiereLettreDuMot(const Chaine : String) : String; var i : Integer; Lettre : Char; Initiale : Boolean; begin Initiale := True; Result := ''; for i := 1 to Length(Chaine) do begin Lettre := Chaine[i]; if Lettre in [#32,'-','.'] then Initiale := True else if Initiale then begin Lettre := UpperCase(Lettre)[1]; Initiale := False; end; Result := Result+Lettre; end; end;
Cyril
J'ai testé ca !
J'ai opté pour la solution de cyril. Mais je pense qu'il serait bon de rajouter en début de fonction
et enlever CONST dans les parametres
Code : Sélectionner tout - Visualiser dans une fenêtre à part chaine := AnsiLowerCase(chaine);
En effet, si on veut mettre la première lettre des mots d'une chaine en majuscule, c'est sous entendu qu'on veux que le reste soit en minuscule or si on travail avec des chaines en majuscule, la fonction ne fait rien
Voili voilou
A+
Partager