begin process at 2013 05 19 15:31:27
  Trouver un code source :
 
dans
 

691 commentaire(s) de Delphiprog sur des sources sur tout CodeS-SourceS

Déposé sur Un bouton personalisable pour delphi

Certains fichiers dans l'archive sont datés du 15/06/2000 et les plus récents du 13/05/2002. Ne me dis pas qu'il a fallu trois années pour écrire ce code et que tu attendu un an avant de nous le soumettre ?

De plus, tu fournis plusieurs fichiers de codes source apparemment identiques et pour plusieurs versions de Delphi. Ignorerais-tu les directives de compilation conditionnelles ?

A partir de Delphi 6, il est fortement recommandé de distinguer les paquets de conception des paquets d'exécution. Cette recommandation ne semble pas avoir été suivie. Mais, bon...

Dans l'ensemble c'est pas mal mais je pense que tu aurais pû t'épargner une multiplication des codes sources. Pour ceux qui seraient intéressés, tu nous aurais épargné également le travail de maintenance du code si on doit passer d'une version 2, à une version 3, puis 4 et enfin 6 de Delphi !
Posté le : 08/08/2003 22:08:15

Déposé sur Position du curseur ( ligne et colonne ) dans un memo ou un ...

Tu as effectivement raison et l'aide en ligne au sujet de la propriété CaretPos est donc erronnée.
Remarque : lors de la création de la fiche, tu passes à PosCurseur le paramètre Sender reçu par la méthode Create. C'est dangereux et heureusement que tu ne l'utilises pas dans ta procédure.

Suggestions :
procedure PosCurseur(Memo: TCustomMemo; Panel: TStatusPanel);
var
  ligne, colonne : integer;
  Affichage : string;
begin
  //Récupère la position de la colonne
  colonne := Memo.CaretPos.X + 1 ;

  //Récupère la position de la ligne
  ligne := Memo.CaretPos.Y + 1 ;

  //Ajoute le texte "lig" et "col" pour l'affichage dans le Panel d'un StatusBar
  Affichage := 'Lig ' + IntToStr(ligne) + ' : Col ' +  IntToStr(colonne);

  //Affiche le texte finale dans le Panel d'un StatusBar
  Panel.Text := Affichage;
end;

procedure TForm1.FormShow(Sender: TObject);
begin
  PosCurseur(RichEdit1, StatusBar1.Panels.Items[0]);
end;

procedure TForm1.RichEdit1SelectionChange(Sender: TObject);
begin
  PosCurseur(Sender as TCustomMemo, StatusBar1.Panels.Items[0]);
end;

Ceci permet de rendre la procédure PosCurseur indépendante, facilement réutilisable et de ne pas lui passer n'importe quoi comme arguments. En transmettant un TCustomMemo comme premier argument, tu couvres donc aussi bien le TMemo que le type TRichEdit puisqu'il s'agit de leur ancêtre commun.

En tous cas, merci de ne nous avoir révélé cette astuce.
Posté le : 29/07/2003 09:54:48

Déposé sur Position du curseur ( ligne et colonne ) dans un memo ou un ...

Extrait de l'aide en ligne de Delphi :
"Utilisez CaretPos pour déterminer les coordonnées du curseur. Le type TPoint définit un emplacement sur l'écran exprimé en pixels, l'origine étant l'angle supérieur gauche. X spécifie la coordonnée horizontale du point et Y la coordonnée verticale. CaretPos indique la position X et Y relative à l'origine client du mémo.

Afin de déterminer la position du signe insertion en termes de caractères de texte uniquement (plutôt qu'en emplacement X/Y), utilisez la propriété SelStart."

Si les autres codes sources utilisent les messages Windows, ce n'est pas pour se faire plaisir mais pour obtenir directement les coordonnées du curseur en ligne et colonnes de Texte au lieu de les obtenir en coordonnées graphiques.
Posté le : 27/07/2003 23:49:45

Déposé sur Mini bloc-notes

Je suis d'accord avec ZMC, d'autant plus que le composant TActionManager n'est disponible que dans la version Entreprise de Delphi, donc accessible à peu de monde ici. Ceci répond peut-être à la question de crazyjoke.
Posté le : 27/07/2003 23:35:20

Déposé sur Ajouter une barre de défilement (scrollbar down)

Il fallait y penser !
Bravo.
Posté le : 05/07/2003 23:30:25

Déposé sur Horloge

Tout ça c'est bien, mais revenir au Turbo Pascal ne nous fait pas avancer de beaucoup.
Une transcription en application console serait un minimum.
Donc, pour les prochaines sources, ce serait mieux, pour la grande majorité, de causer en Delphi.
Posté le : 05/07/2003 23:25:50

Déposé sur Colorieur syntaxique delphi

Superbe travail et rapidité d'exécution malgré tout.
Pour information, les composants SynEdit réalisent le même travail, de manière transparente, en prenant aussi en charge la grammaire du Pascal (et plein d'autres languages, facilement extensible).
Posté le : 02/07/2003 08:25:03

Déposé sur Therenamer

1/-Faudrait éviter de coder des chemins en dur :
assignfile(F,'E:ProjetTheRenamer enamer.ini');

2/- On peut simplifier et alléger l'écriture de :
if (ext = 'bmp') or (ext = 'jpg') or (ext = 'JPG') or (ext = 'jpeg') or(ext = 'JPEG')
en
ext := UpperCase(Ext);
if (ext = 'BMP') or (ext = 'JPG') or (ext='JPEG') then...

3/- le code :
tabfile[i].ext := copy(tabfile[i].filename,pos('.',tabfile[i].filename)+1,4);
est équivalent à :
tabfile[i].ext := ExtractFileExt(tabfile[i].filename);
Pour connaitre les attributs d'un fichier, tu peux utiliser FileGetAttr.

4/- Expliquer le code suivant :
      if(DeleteFile(temp+''+tabfile[i].filename))
      then
        DeleteFile(temp+''+tabfile[i].filename)
"si la suppression du fichier a réussi alors le supprimer" ?????
Posté le : 29/06/2003 08:08:53

Déposé sur Verrouiller rapidement son poste

Et dans quelle unité est déclarée cette procédure magique ?
Posté le : 27/06/2003 21:22:37

Déposé sur Solution pour le compte est bon

Même si le code peut (et doit) être considérablement allégé (chose que j'ai faite), en revanche la présence de plusieurs GoTo m'a laissé perplexe.
La prochaine fois, écris d'abord le code en Pascal, ça t'obligera à mieux le structurer et après tu pourras le transcrire dans ce que tu veux.
Mais enfin, ça fonctionne et plutôt bien.
Avec un peu de commentaires dans le code...
Félicitations cedricbi ***
Posté le : 15/06/2003 09:36:30



Nos sponsors


Sondage...

CalendriCode

Mai 2013
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
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 : 0,359 sec (4)

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