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 :

Nos petits trucs utiles de développeurs


Sujet :

Delphi

  1. #1
    Membre chevronné
    Avatar de Droïde Système7
    Homme Profil pro
    Inscrit en
    Septembre 2003
    Messages
    2 262
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 2 262
    Points : 1 928
    Points
    1 928
    Par défaut Nos petits trucs utiles de développeurs
    Bonjour

    J'espère que je poste dans le bon forum, sinon merci à la modération de rediriger ce thread.

    Depuis longtemps, j'avais envie de créer quelque chose de très utile pouvant servir à tout le monde et surtout soit au niveau débutant, mais puisse, pourquoi pas, également servir aux autres.

    Voici donc un thread entièrement consacré aux petits trucs sans prétention bêtes comme choux, mais très efficaces à l'usage.

    Il ne s'agit en aucun cas de code compliqué ni de manipulation de haut vol ; tout le contraire et accessible à tous.

    Je vous invite pour notre plus grand plaisir de développeurs d'ajouter vos trucs.

    Aller, je commence...


    • BUT : Comment s'y retrouver dans une feuille de plusieurs milliers de lignes, lorsque l'on réalise des modifs un peu partout éparpillées dans différentes procédures et fonctions ?

    C'est une technique que je nomme "Mickeytisation". Pourquoi ? hé bien vous allez tout de suite comprendre.
    Imaginez une feuille de 50 000 lignes, vous avez repris le code d'une dizaine de procédures et quelques fonctions, alors ensuite si dans les semaines à venir, vous vous apercevez qu'un comportement anormal de votre appli provient (ou peu provenir) de ces modifications ; là intervient ma Mickeytisation.

    Exemple :
    En face de chaque bloc modifié, je pose au gré de mon imagination un"riri", ou un "loulou", ou encore un "fifi", etc.
    Je complémente par le datage de ces modifs afin de mieux m'y retrouver.
    Mais attention, chaque "loulou" par exemple correspondra à une seule série de modification.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    procedure...
    begin
    ...        // loulou   11/2007
    end;
    A l'aide de la fonction rechercher de votre EDI, c'est ensuite un jeu d'enfant d'aller consulter chaque bloc modifié correspondant à telle ou telle date. La semaine dernière encore, ce truc m'a bien évité des heures et des heures de recherche !
    Ne pas oublier en en-tête de chaque feuille d'écrire la correspondance des modifs, style : "loulou" = ajout option impression... du 17/11/2007


    Encore un autre truc :
    • BUT : En plein travail, je dois m'absenter ou bien fermer mon PC, etc., comment retouver rapidement l'endroit exact de ma dernière écriture de code lors de la réouverture de mon EDI ?

    Simplement de taper n'importe quel caractère juste à l'endroit que vous étiez avant de passer à autre chose. Suffit en reprenant votre travail de lancer la compil, le compilateur vous indiquera gentiment l'endroit exact en question.

    J'espère que ce thread nous sera utile

    A vous de jouer et de nous donner vos trucs !


  2. #2
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    176
    Détails du profil
    Informations personnelles :
    Âge : 74
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 176
    Points : 123
    Points
    123
    Par défaut
    Bonjour DS7 (ton pseudo est trop compliqué pour moi )
    Ton idée est intéressante : si ça marche, le problème à terme sera de classer tous les "trucs" afin de s'y retrouver rapidement sans avoir à lire l'intégralité de ton topic.
    Je participe donc, au niveau "ras des pâquerettes", mais c'est mon niveau...

    En cas de grosses modif, je fais préalablement une copie de mon dossier de projet et je renomme ce nouveau dossier en incrémentant : j'ai ainsi Projet0, Projet1, Projet2, etc... En cas de grosses cata, on peut toujours redémarrer avec le projet précédent.

    En cas de petites modif, je copie la procédure à modifier et l'encadre d'accolades { } pour la mettre en remarque : je peux ainsi la récupérer facilement si les nouveautés apportées ont un résultat pire que le précédent...

    Cordialement,
    Alain
    Ce qui est simple et évident pour soi-même ne l'est pas forcément pour les autres... et réciproquement !

  3. #3
    Membre chevronné
    Avatar de Droïde Système7
    Homme Profil pro
    Inscrit en
    Septembre 2003
    Messages
    2 262
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 2 262
    Points : 1 928
    Points
    1 928
    Par défaut
    Bonjour Alain,

    Tu es le premier à encourager ce fil et je t'en remercie.

    En effet, ensuite au niveau du classement... mais ici n'oublions pas notre fameuse équipe de la rédac et anciens confrères que je salue amicalement au passage.

    Tu me fais penser à donner ma méthode perso de gestion de sauvegarde.

    J'utilise systématiquement chaque jour trois jeux de cartouches Zip, lesquelles tournent à tout de rôle régulièrement que je place dans une autre pièce.

    En complément je réalise systématiquement une copie de mon dossier (tout entier) de travail.

    Bref, j'ai toujours dans un dossier, deux dossiers : celui d'origine (du travail en cours) et la copie.

    Si ça tourne au vinaigre sur l'original, alors je supprime ce dossier d'origine et repars sur la copie et renommant comme le dossier d'origine. Puisque cette copie ne peux dater que du lendemain seulement.

    Un développeur sérieux, doit savoir que tout dossier et fichier sur son disque dur, peut être potentiellement perdu un jour.

    La fameuse loi de Murphy connue aux tout débuts du monde de l'électronique, ensuite de l'informatique...

    Bref, ne JAMAIS faire confiance à UN SEUL support. Toujours multiplier les jeux de sauvegardes sur différents supports hors du PC.

    Je ne considère aucunement un disque dur partitionné en un support fiable du fait qu'il comporte plusieurs espaces virtuels. Pour moi il ne s'agit que d'UN seul support au niveau fiabilité de sauvegarde ; rien de plus.

    Jean-Pierre (plus simplement )

  4. #4
    Expert éminent sénior
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    13 429
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 13 429
    Points : 24 794
    Points
    24 794
    Par défaut
    Vos idées pour la gestion des sources et des modifications sont effectivement à la portée de tous !
    Il y a exactement les mêmes choses pour les professionnels, à la différence qu'il y a des outils pour cela, dont certains sont gratuit en plus !

    Delphi 7
    Jedi VCS (+ Serveur de Version) ou Tortoise SVN
    Mantis (~Bug Tracker)
    Final Builder ou MS VSS (Payant les deux)

    Jedi permet de versionner chaque unité, avec des commentaires de prise en main et de depot (Check Out / In), cela permet d'éviter que plusieurs personnes s'écrasent leur modification

    Tortoise, permet aussi de versionner, d'ajoute un commentaire au dépot, dans le comportement standard, il n'y a pas de prise en main, tout le monde peut faire une modif à tout moment, mais un outil permet de merger deux versions modifiées issues de la même version de la branche

    Mantis, c'est un outil qui permet de gérer les bugs mais aussi une road map, et dans le code chaque morceau peut se voir ajouter par commentaire, le numéro du Mantis pour assurer la traçabilité, d'ailleurs, il est interessant de mettre un cartouche dans le commentaire de dépot, indiquant le mantis, puis Jedi et Mantis, peuvent être utilisés par SQL, très utile pour générer automatiquement le ReadMe.txt

    Actuellement, on ne le fait pas où je travaille, mais avant, tous les sources étaient gravées sur un CD, ainsi qu'une WMWare (environnement poubellisable à volonté) sur DVD, les disques en deux exemplaires par semaine, un au bureau, un dans un coffre !!!

    Enfin, FinalBuilder, si l'on l'utilise au mieux, à chaque version, on ajoute un marqueur de version (comme le fait Microsoft Visual Source Safe), pour définir qu'un ensemble de fichier (un projet cela peut-être 4-5 unité comme 200), et évidemment, une génération d'un zip des sources ET Lib (Interne et Externe) pour retrouver l'environnement en cas de déboggage d'une antépénultième version, et en fonction du système de Serveur de Version et du Client, tu peux aussi récupérer le projet pour n'importe quelle version directement à partir de l'outil, créer de nouvelle branche pour corriger un bug sur une ancinne version distribuée, et bien sur, prévoir de faire la modification (ou merge) dans la version suivante (bcp de version ne vont jamais chez le client, ne passant pas la recette)

    Sinon, le "truc pour trouver l'endroit exact de ma dernière écriture de code", grand classique, un "DEMAIN, FAIRE le BIDULE" se retrouve très facilement avec un petit coup de F9, mieux vaut noter en clair, ce qu'il faut faire, si on a oublié où on en était cela peut aider ...


    Un truc :
    BUT : Ecrire un Code à partir d'un Algo compliqué

    Il arrive souvent que l'on aie une fonction un peu compliquée impliquant de nombreuses boucles et conditions, bien sur, on peut faire proprement son algo, sous la forme de schéma (MCT, MOT, ...), mais il est toujours utile de commencer dans le source par écrire l'algo sous la forme de texte (en clair, en français), une fois tout l'algo écrit, il suffit de "remplir" de code entre chaque commentaire, ainsi, on a bcp de chance d'avoir un code de qualité, opérationnel respectant l'algo et commenté !
    Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !
    Attention Troll Méchant !
    "Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
    Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
    L'ignorance n'excuse pas la médiocrité !

    L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
    Il faut avoir le courage de se tromper et d'apprendre de ses erreurs

  5. #5
    Modérateur

    Homme Profil pro
    Ingénieur retraité
    Inscrit en
    Octobre 2005
    Messages
    2 396
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur retraité

    Informations forums :
    Inscription : Octobre 2005
    Messages : 2 396
    Points : 3 263
    Points
    3 263
    Par défaut
    Bonjour,

    Comme Alainvh Je participe au niveau "ras des pâquerettes" :

    BUT : Comment localiser une erreur de logique qui ne provoque pas forcément un plantage ou un message d'erreur:

    1 ) Je crée une Form qui comporte un RichEdit si je manque de place dans les Forms du projet.

    2) Avant et après le ou les groupes d'instructions que je soupçonne fautives je place des RicheEdit.lines.Add() et des RicheEdit.upDate pour pouvoir suivre l'évolution de valeurs ou de résultats critiques.

    3) Pour éviter d'envoyer trop d'infos dans le RichEdit je les précède, si possible, de if ... then pour n'envoyer à la fin de chaque procédure franchie qu'une simple ligne disant par exemple "Procedure tartanpion : bien passé"

    4) Avant l'essai suivant suivant je supprime l'envoi des infos inutiles et je rétrécis le domaine des recherches jusqu'à ce que j'arrive à cerner la ligne où cela commence à dérailler.

    (un TRichEdit et non un TMemo car on a la possibilité offerte par RichEdit.Print en cas de besoin).

    Parfois c'est rapide, parfois c'est la galère, mais comme les compilos ne savent pas détecter toutes les erreurs qu'on peut faire autant se servir de la bécane pour localiser les erreurs.

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

  6. #6
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    176
    Détails du profil
    Informations personnelles :
    Âge : 74
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 176
    Points : 123
    Points
    123
    Par défaut
    Je procède un peu comme Gilbert Geyer, mais en étant encore plus à "ras des pâquerettes"
    Je place un ShowMessage('Ici') et un ShowMessage('Là') de part et d'autre du code qui me semble "dérailler" : puis je resserre cette "tenaille" par dichotomie. En général, je trouve le "bug" assez vite : évidemment, je ne peux pas imprimer de compte-rendu comme le permet RichEdit, mais je n'utilise aucun composant sur la Form !
    Ce qui est simple et évident pour soi-même ne l'est pas forcément pour les autres... et réciproquement !

  7. #7
    Modérateur

    Homme Profil pro
    Ingénieur retraité
    Inscrit en
    Octobre 2005
    Messages
    2 396
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur retraité

    Informations forums :
    Inscription : Octobre 2005
    Messages : 2 396
    Points : 3 263
    Points
    3 263
    Par défaut
    Re-bonjour,

    A Alainvh : idem pour moi avec un ShowMessage pour les cas simples sauf à l'intérieur d'une boucle où il faudrait cliquer for i:=1 to N fois sur "OK" lorsque N est élevé.

    Par contre :
    je resserre cette "tenaille" par dichotomie
    ... Ok sur je resserre cette tenaille dans le cas où un message d'erreur me localise la 2ième moitié de la tenaille, mais par "dichotomie" je ne sais pas faire (???) je procède à l'avancement dans le style "jusqu'ici tout se passe bien" pour voir à partir d'où ça déraille.

    Cela m'éclairerait ma lanterne en précisant comment resserrer la tenaille par dichotomie : c'est quoi l'astuce qui se cache derrière le concept dans le cas présent (j'ai beau penser au tri dichotomique je ne vois pas le rapport).

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

  8. #8
    Expert éminent sénior
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    13 429
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 13 429
    Points : 24 794
    Points
    24 794
    Par défaut
    Pour ma part, j'utilise OutputDebugString qui utilisent le Journal d'évènement de Delphi, mais j'utilise aussi le principe du Memo\RichEdit (j'ai développé une petite fonction Trace, qui affiche les logs de l'appli en temps réel en couleur selon la gravité), le ShowMessage c'est aussi bien pratique (dans une appli converti de DBase à MySQL des opérations DB n'ont pu être comprise et donc traduite, du coup, en mode SUPERUSER, il y a des messages "Je ne sais pas pourquoi, on passe par là" ou "Code non Traduit", et dans l'appli, en fait quelques cas "spéciaux" du coup ne sont plus gérés ...)
    Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !
    Attention Troll Méchant !
    "Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
    Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
    L'ignorance n'excuse pas la médiocrité !

    L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
    Il faut avoir le courage de se tromper et d'apprendre de ses erreurs

  9. #9
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    176
    Détails du profil
    Informations personnelles :
    Âge : 74
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 176
    Points : 123
    Points
    123
    Par défaut
    Re-Gilbert Geyer.
    Peut-être bien que j'ai exagérément utilisé le mot dichotomie
    Supposons une procédure de 20 lignes.
    Je place mon premier ShowMessage en début de procédure et le dernier après la ligne 10.
    - cas 1 : ça plante avant l'affichage du dernier, je le remonte après la ligne 5.
    - cas 2 : ça plante après l'affichage du dernier, je le replace en fin de procédure et déplace le premier ShowMessage juste avant la ligne 15.
    Etc...
    En fait, c'est la stratégie bien connue du jeu simpliste où il s'agit de découvrir un nombre choisi secrètement par un tiers (je cite un nombre et on me répond si celui qui a été choisi est plus petit ou plus grand).
    Allez, fais-moi plaisir, il y a bien un peu de dichotomie là-dessous...
    A plus.
    Ce qui est simple et évident pour soi-même ne l'est pas forcément pour les autres... et réciproquement !

  10. #10
    Membre habitué
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    158
    Détails du profil
    Informations personnelles :
    Âge : 53
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Janvier 2005
    Messages : 158
    Points : 158
    Points
    158
    Par défaut
    Citation Envoyé par alainvh
    évidemment, je ne peux pas imprimer de compte-rendu comme le permet RichEdit
    Juste un petit truc auquel , on ne pense pas toujours (c'était mon cas il y a peu)

    Sur un showmessage, on peut faire un control C et placer le tout dans notepad et ... l'imprimer.

    A+
    Pitango
    -------------------------------------------------
    [Delphi7.1 Entreprise][MYSQL 5.0.27][SQL SERVER 7][W2000/NT4]

  11. #11
    Expert éminent sénior
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    13 429
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 13 429
    Points : 24 794
    Points
    24 794
    Par défaut
    pitango +1
    Excellent !

    Je viens d'apprendre un Truc là ! Très Pratique ! C'est une technique à donner aux utilisateurs, au lieu des copie d'écran sous Word
    Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !
    Attention Troll Méchant !
    "Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
    Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
    L'ignorance n'excuse pas la médiocrité !

    L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
    Il faut avoir le courage de se tromper et d'apprendre de ses erreurs

  12. #12
    Membre habitué
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    158
    Détails du profil
    Informations personnelles :
    Âge : 53
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Janvier 2005
    Messages : 158
    Points : 158
    Points
    158
    Par défaut
    Citation Envoyé par ShaiLeTroll
    C'est une technique à donner aux utilisateurs
    et cela fonctionne également pour tout type de message.(Exceptions..,Messages systèmes divers).

    A+
    Pitango
    -------------------------------------------------
    [Delphi7.1 Entreprise][MYSQL 5.0.27][SQL SERVER 7][W2000/NT4]

  13. #13
    Membre à l'essai
    Profil pro
    Développeur Java
    Inscrit en
    Septembre 2006
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Septembre 2006
    Messages : 11
    Points : 16
    Points
    16
    Par défaut
    C'est génial ce que tu as proposé pitango.

    Je plussoie ce post car étant débutant en Delphi ça me permettra sûrement de ne pas me casser la tête trop longtemps sur certaines choses et d'avoir directement les bons réflèxes.

  14. #14
    Membre habitué
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    101
    Détails du profil
    Informations personnelles :
    Âge : 53
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2006
    Messages : 101
    Points : 132
    Points
    132
    Par défaut
    Merçi a tous pour vos astuces
    Pas bête du tout vos systèmes

    Hepha1970
    Windows 7 / Debian 8 jessie / Kali 2 / Nas Synology ds214se / Arduino Mega 2560 / Raspberry Pi 3

  15. #15
    Modérateur

    Homme Profil pro
    Ingénieur retraité
    Inscrit en
    Octobre 2005
    Messages
    2 396
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur retraité

    Informations forums :
    Inscription : Octobre 2005
    Messages : 2 396
    Points : 3 263
    Points
    3 263
    Par défaut
    Bonjour,

    1) A Alainvh :
    - cas 1 : ça plante avant ...
    - cas 2 : ça plante après ...
    Allez, fais-moi plaisir, il y a bien un peu de dichotomie là-dessous...
    ... Exact ou plus exactement dans des cas où ça plante ou dans des cas où il y a msg-d'erreur sinon pour des erreurs non signalées par la bécane je suis obligé de procéder "à l'avancement".


    2) A Pitango :
    Juste un petit truc auquel , on ne pense pas toujours
    ... on risquait pas d'y penser : ça ne me serait jamais venu à l'esprit de faire un Ctrl-C sur un ShowMessage où l'info semble être affichée dans des TLabel.
    ... par contre c'est génial si ça marche en plus avec d'autres types de messages. En tous cas merci de l'avoir signalé.

    A+

    EDIT : Manque de bol je viens d'essayer le Ctrl-C sur un ShowMessage, et ensuite, lors du Ctrl-V, le presse papier ne me renvoie que ce qui s'y trouvait a préalable et non le contenu du ShowMessage. Donc la manip ne marche pas sous Delphi-5 : Dommage.
    Mais les utilisateurs de Delphi-5 peuvent toujours se créer une lucarne ShowMessage parsonnalisée en y remplaçant le TLabel par un TEdit où le texte est sélectionné dès l'affichage avec SelStart et SelLength de sorte qu'il ne reste plus que le Ctrl-C à taper on peut même en profiter pour baptiser la procédure avec un nom très court comme "sms()" car c'est chiant à la longue de devoir toujours re-taper les 9 caractères de ShowMessage.
    N'oubliez pas de consulter les FAQ Delphi et les cours et tutoriels Delphi

  16. #16
    Membre expert
    Avatar de aityahia
    Homme Profil pro
    CIEPTAL CARS SPA
    Inscrit en
    Mars 2006
    Messages
    1 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Algérie

    Informations professionnelles :
    Activité : CIEPTAL CARS SPA
    Secteur : Transports

    Informations forums :
    Inscription : Mars 2006
    Messages : 1 938
    Points : 3 329
    Points
    3 329
    Par défaut
    Citation Envoyé par pitango Voir le message
    Juste un petit truc auquel , on ne pense pas toujours (c'était mon cas il y a peu)

    Sur un ShowMessage, on peut faire un control C et placer le tout dans notepad et ... l'imprimer.

    A+
    sa ne semblait pas évident et sa marche perci pitango

    pour moi c'est les ShowMessage , je sais pas si certains d'entre vous ont déjà travaillés avec windev mais je trouve que son éditeur est excellent, Avant de commencer a codé on doit entrer un login et a chaque fois qu'on modifie une ligne on a l'utilisateur et la date et heure de modification a coté de la ligne, sa serais bien si on avais sa avec delphi.

  17. #17
    Membre habitué
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    158
    Détails du profil
    Informations personnelles :
    Âge : 53
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Janvier 2005
    Messages : 158
    Points : 158
    Points
    158
    Par défaut
    Bonjour,

    Citation Envoyé par Gilbert Geyer
    Manque de bol je viens d'essayer le Ctrl-C sur un ShowMessage, et ensuite, lors du Ctrl-V, le presse papier ne me renvoie que ce qui s'y trouvait a préalable et non le contenu du ShowMessage. Donc la manip ne marche pas sous Delphi-5 : Dommage

    Je n'ai pas Delphi 5 , mais cela devrait fonctionner, je te propose de recommencer en cliquant sur une partie de ton showmessage, avant d'effectuer ton CTRL-C

    A+
    Pitango
    -------------------------------------------------
    [Delphi7.1 Entreprise][MYSQL 5.0.27][SQL SERVER 7][W2000/NT4]

  18. #18
    Modérateur
    Avatar de tourlourou
    Homme Profil pro
    Biologiste ; Progr(amateur)
    Inscrit en
    Mars 2005
    Messages
    3 844
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Biologiste ; Progr(amateur)

    Informations forums :
    Inscription : Mars 2005
    Messages : 3 844
    Points : 11 274
    Points
    11 274
    Billets dans le blog
    6
    Par défaut
    D5 W98PE : ne fonctionne malheureusement pas !
    Delphi 5 Pro - Delphi 10.4 Rio Community Edition - CodeTyphon 6.90 sous Windows 10 ; CT 6.40 sous Ubuntu 18.04 (VM)
    . Ignorer la FAQ Delphi et les Cours et Tutoriels Delphi nuit gravement à notre code !

  19. #19
    Modérateur

    Homme Profil pro
    Ingénieur retraité
    Inscrit en
    Octobre 2005
    Messages
    2 396
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur retraité

    Informations forums :
    Inscription : Octobre 2005
    Messages : 2 396
    Points : 3 263
    Points
    3 263
    Par défaut
    Re-bonjour,

    A Pitango :
    je te propose de recommencer en cliquant sur une partie de ton showmessage, avant d'effectuer ton CTRL-C
    ... je viens de ré-essayer : 1 fois en cliquant sur le TLabel et 1 fois en cliquant juste en-dessous : ça marche pas : faudra s'en passer sous Delphi 5. Merci quand même.

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

  20. #20
    Membre éprouvé

    Profil pro
    Inscrit en
    Mai 2003
    Messages
    582
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Mai 2003
    Messages : 582
    Points : 915
    Points
    915
    Par défaut
    Citation Envoyé par Gilbert Geyer Voir le message
    faudra s'en passer sous Delphi 5. Merci quand même.
    Sudgestion...on remplace ShowMessage() par notre routine....
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    procedure ShowMessage(DisplayText:string);
    begin
      Application.MessageBox(PChar(DisplayText),PChar(Application.ExeName),MB_OK);
    end;
     
    procedure TfrmMain.cmdPrintClick(Sender: TObject);
    begin
      ShowMessage('Testing');
    end;
    Comment dupliquer un disque...ça vous intéresse?
    Tutoriel et code source delphi ici

Discussions similaires

  1. Thread "Nos petits trucs utiles de.." cadenassé
    Par Droïde Système7 dans le forum Débuter
    Réponses: 8
    Dernier message: 22/02/2012, 12h45
  2. Petit truc utile que j'ai découvert $.each
    Par SpaceFrog dans le forum jQuery
    Réponses: 12
    Dernier message: 27/08/2010, 03h12
  3. Petit truc tout simple que je comprend pas
    Par Olaf MENJI dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 29/11/2005, 17h56

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