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 :

Nos petits trucs utiles de développeurs


Sujet :

Delphi

  1. #61
    Membre émérite
    Un truc bien pratique lorsqu'on reprend du code vieux de 6 mois.
    Il s'agit de déclarer une variable contenant l'indice d'une colonne d'une Grid. Quelquefois cela fait beaucoup de variable à déclarer et initialiser mais cela évite d'avoir à rechercher à chaque fois l'indice de la colonne.

    Un exemple tout bête, je ne cherche plus l'indice de ma colonne "TOTAL", j'ai juste à lire la valeur contenue dans ma variable "ColTotal"

  2. #62
    Membre expérimenté
    Citation Envoyé par popo Voir le message
    Un truc bien pratique lorsqu'on reprend du code vieux de 6 mois.
    Il s'agit de déclarer une variable contenant l'indice d'une colonne d'une Grid. Quelquefois cela fait beaucoup de variable à déclarer et initialiser mais cela évite d'avoir à rechercher à chaque fois l'indice de la colonne.

    Un exemple tout bête, je ne cherche plus l'indice de ma colonne "TOTAL", j'ai juste à lire la valeur contenue dans ma variable "ColTotal"
    J'ai rien compris...

  3. #63
    Modérateur

    Salut,

    J'ai rien compris...
    Un truc bien pratique c'est aussi de ne pas chercher à comprendre l'incompréhensible
    ... mais l'essentiel est que le truc soit pratique pour popo.

    A+
    N'oubliez pas de consulter les FAQ Delphi et les cours et tutoriels Delphi

  4. #64
    Membre habitué
    Moi j'ai bien compris parce que ça fait longtemps que je fais pareil
    A part que je ne crée pas une Variable mais une Constante, vu que les
    colonnes sont contantes et ne changent pas de place.

    D'ailleurs meme si elle change de plus, il suffit de modifier la valeur
    de la constante (et donc de pas toucher au codes)
    EXPLICAITON :

    Imaginons un tableau qui contient des informations sur un client.

    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    4
    tab[0]:=nom;
    tab[1]:=adresse;
    tab[2]:=Code postal,
    tab[3]:=...


    je crée des constantes pour éviter de rechercher les indices du tableaux
    a chaque fois que j'en ai besoin donc ça donne un truc comme :

    Const
    I_NOM : integer = 0;
    I_ADRESSE : integer = 1;
    I_CODEPOSTAL : integer = 2;
    ...

    Il suffit ensuite d'appeller son tableau comme ça :

    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    4
    tab[I_NOM]:=nom;
    tab[I_ADRESSE]:=adresse;
    tab[I_CODEPOSTALE]:=Code postal;
    ...


    Si un indice change de place, il suffit de modifier la constante et on touche pas au code.

    Je pense que c'est ce qu'il voulait dire

  5. #65
    Membre expérimenté
    J'ai compris !!

  6. #66
    Membre habitué

  7. #67
    Membre expérimenté
    Comment indenter un bloc de texte sélectionné :

    Mnémotechnique = Control Magie

    CTRL + Maj + I

    (Sous D7)

  8. #68
    Modérateur

    Et Control KI
    Ou Control KU
    pour Indenter
    ou Unindenter
    ... sous D5 où "Control MagIe et Control MagUe" marchent également.

    A+
    N'oubliez pas de consulter les FAQ Delphi et les cours et tutoriels Delphi

  9. #69

  10. #70
    Membre éprouvé
    Ctrl +une clique sur le nom d'un variable,fonction,class pour atteindre ou il est déclaré

  11. #71
    Membre éprouvé
    Pour les gens qui utilises un TWebBrowser et aiment fair quelque actions via le jscript voici un truc simple pour récuperer une parameter envoyée par jscript
    On utilise cette fonction pour envoyer du texte vers notre application coté du jscript
    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
     function sender(inp)
     { 
      window.status='MYPERSOTAG'+inp;
      window.status='Ready';
      return false;
     }

    voici page test html
    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
     
    <html>
    <script type="text/javascript">
    <!--
     function sender(inp)
     { 
      window.status='MYPERSOTAG'+inp;
      window.status='Ready';
      return false;
     }	
    //-->
    </script>
     <body>
      <p>
       <a href="#" onclick="return sender('New_'+Math.random());">Cliquer Ici</a>
      </p> 
     </body>
    </html>

    Pour récupérer le texte envoyé on utilise l'évenement OnStatusTextChange du WebBrowser
    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
     
    procedure MyMsgHandler(const str:string);
    begin
       //ici on récupère le texte pour fair quelque actions 	
       form1.caption:=str;
    end;
     
    procedure TForm1.WebBrowser1StatusTextChange(Sender: TObject;
      const Text: WideString);
    begin
     
     if (Copy(Text,1,10)='MYPERSOTAG') then
          MyMsgHandler(Copy(Text,11,Length(Text)));
     
    end;

  12. #72
    Membre éprouvé
    Utiliser les bonnes coleurs pour une bonne lisibilité de code
    Utiliser les bonnes coleurs pour une bonne lisibilité de code

  13. #73
    Membre expérimenté
    Citation Envoyé par Montor Voir le message
    Utiliser les bonnes couleurs pour une bonne lisibilité de code
    très bonne idée, voici des années que j'utilise Delphi7 et je n'avais encore jamais trifouillé sur cet onglet :

    ""Outils" > "Options de l'éditeur" et modifier "Couleurs prédéfinies" ; "Couleurs du fond" ; etc.

    Ça me change du tout au tout Whaouuu !!! bonne idée

    @+

  14. #74
    Membre émérite
    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    Moi j'ai bien compris parce que ça fait longtemps que je fais pareil
    A part que je ne crée pas une Variable mais une Constante, vu que les
    colonnes sont contantes et ne changent pas de place.


    Sauf quand par exemple tu gère un budget et que tout tes clients ne commencent pas leur saison au mois de janvier !

  15. #75
    Membre éprouvé
    Expressions regulieres pour Delphi

    http://www.regular-expressions.info/...TPerlRegEx.zip

  16. #76
    Membre expérimenté
    Garder toujours la trace des modifications majeures
    Si un jour, avec bien plus d'expérience engrangée au fil des ans, il vous arrive de modifier radicalement une fonction ou procédure ; surtout gardez-en une trace !

    Par exemple juste au dessus de la fonction ou procédure remaniée. Laissez cet bloc-old sous commentaires.

    De cette façon, si pour un oui ou un non, par la suite, vous avez directement ou bien indirectement, des soucis sur un bloc de code qui auparavant fonctionnait, mais qui désormais pose des difficultés ; vos recherches en seront grandement facilitées.

    Suffira tout simplement et rapidement, de remplacer le ou les blocs en question afin de comparer.

    L'auteur de ces lignes vient d'en faire une cuisante expérience. En effet sur une appli distribuée à des centaines d'unités par mois, seul deux utilisateurs éprouvaient de méchants blocages.

    Sous mon Vista et sous le XP de mes testeurs ; tout était en RAS.

    Mais le plus difficile et redoutable pour un développeur, n'est-il pas de détecter un bug qu'il ne peut détecter lui-même ?

    @+

  17. #77
    Expert éminent sénior
    Citation Envoyé par Droïde Système7 Voir le message
    Si un jour, avec bien plus d'expérience engrangée au fil des ans, il vous arrive de modifier radicalement une fonction ou procédure ; surtout gardez-en une trace !
    ben...c'est pas un peu à ça que sert le versioning ?
    Developpez.com: Mes articles, forum FlashPascal
    Entreprise: Execute SARL
    Le Store Excute Store

  18. #78
    Expert confirmé
    Citation Envoyé par Paul TOTH Voir le message
    ben...c'est pas un peu à ça que sert le versioning ?
    Plus exactement : La gestion de configuration. Bon d'accord, je joue sur les mots...

  19. #79
    Membre expérimenté
    Citation Envoyé par Paul TOTH Voir le message
    ben...c'est pas un peu à ça que sert le versioning ?
    Paul, tu emploies des mots inconnus aux débutants ; ici ce mot est trop compliqué, voire alambiqué

    Ce thread s'adresse aux débutants, et non aux experts ; dont tu fais partie.



    PS : Franck, merci de cet éclairage ; c'est en effet bien plus parlant.

    Je faisais alors du versioning sans le savoir, comme Monsieur Jourdain...

  20. #80
    Expert éminent sénior
    Citation Envoyé par Droïde Système7 Voir le message
    Paul, tu emploies des mots inconnus aux débutants ; ici ce mot est trop compliqué, voire alambiqué
    ben justement, comme ça un débutant pour s'intéresser au sujet s'il rencontre le problème
    Developpez.com: Mes articles, forum FlashPascal
    Entreprise: Execute SARL
    Le Store Excute Store

###raw>template_hook.ano_emploi###