Asdorve ; ouvre ton email et télécharge le dernier zip (une fonction de plus)
A demain
Asdorve ; ouvre ton email et télécharge le dernier zip (une fonction de plus)
A demain
Merci, j'essaye de regarder ce soir si j'ai le temps, au pire demain matin et dans la journée je suis les instructions que tu m'as donnée par MP.
Bonne soirée et à demain![]()
Hé bien voilà....
Asdorve vient de présenter ce source ici
http://www.developpez.net/forums/sho...wpost&t=171776
Le présent sujet peut donc être fermé.
Un modérateur pourrait maintenant l'épurer de tous les messages non techniques, qui ne servent plus à rien...
Bravo Asdorve.
Beau travail![]()
Puis-je faire quelques suggestions ?![]()
oui, merci
1) corriger la faute dans Label1 de Form1 (cliquez à l'endroit où vous souhaitez placcer votre ...
2) Le nommage des contrôles et des variables est moyen
2) Créer une structure pour la figure afin d'alléger le prog en variables globales (j'aime pas trop), ce qui donnerait qque chose comme ça (ma modeste contribution à ce projet) :
Je me suis juste permis d'apporter une petite pierre à l'édifice![]()
C'est fait.
1) corriger la faute dans Label1 de Form1 (cliquez à l'endroit où vous souhaitez placcer votre ...![]()
Je veux bien que nous créions des structures mais ....
Tu remarqueras le double emploi variables globales/paramètres passés (je suis certain de ce que tu auras noté cette redondance). CETTE REDONDANCE EST VOLONTAIRE , et voici pourquoi :
Nous sous sommes dit qu'il était plus facile, pour celui qui voudrait récupérer tout ou partie de l'outil pour l'insérer dans une application, d'avoir devant les yeux les 2 façons de procéder :
1) garder certains paramètres en variables globales (et alors ne pas les passer en paramètres aux 2 sous-routines de dessin)
ou
2) supprimer la plupart des variables globales et les passer en paramètres aux 2 sous-routines de dessin
Nous avons longuement hésité et nous sommes finalement dit qu'il convenait de laisser l'ensemble présent afin de faciliter la tâche à celui qui déciderait d'une utilisation ou de l'autre...
Tu n'auras pas été sans remarquer, à ce propos, que le code de la Form principale pourrait être considérablement allégé en gardant des variables globales et en se passant du passage des paramètres de dessin. C'est sur... Mais, là aussi, nous avons essayé de nous mettre "dans la peau" de celui qui ne souhaiterait utiliser qu'une partie de l'outil. En répétant systématiquement la syntaxe, nous lui avons considérablement facilité la tâche
pour ce qui est du nommage des variables et des contrôles..... je crois que tu as déjà eu l'occasion de "mesurer" cette avarice d'octets... qui devient légendaire" ""
![]()
Bon, déjà, j'avais pas mis le bon zip![]()
(je vais rectifier)
Oui, j'ai vu tout ça
Je n'ai modifier qu'une seule des 2 fonctions pour garder les 2 façon de faire
Par contre je ne suis pas d'accord avec vous sur les déclaration de variables
Pourquoi déclarer
pour les passer en paramètres, c'est stupide et inutile
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 Public centrex As Single, centrey As Single, epaisseur As Integer, coultrait As Long, coulfond As Long, etat As Boolean, anglerot As Integer Global plein As Boolean, partiel As Boolean
Soit les variables sont publiques et ca ne sert à rien de surcharger les fonctions, soit elles sont locales et on les passe en paramètres, mais pas les 2
Edit : zip rectifié, pardon
C'est bien ce que j'ai dit dans mon message précédent : un choix à faire !Soit les variables sont publiques et ca ne sert à rien de surcharger les fonctions, soit elles sont locales et on les passe en paramètres, mais pas les 2
Bon : ce que nous pouvons peut-être faire :
Assortir de commentaires (en laissant les variables publiques et en les enlevant des sous-routines)... pour expliquer comment on peut procéder de l'autre manière (et : pour que ce soit clair, mettre en commentaires numérotés, des 2 côtés (form principale et module), l'autre façon de procéder... car le choix de stratégie de l'utilisateur final va considérablement dépendre du reste de son application....
Comme çà ?
Bon...
Je viens de voir ton zip...
Tu y as ajouté la structure et allégé l'appel depuis la Form1....
Je propose donc de mettre simplement en commentaires l'autre façon, à chaque niveau.
Qu'en penses-tu ? (toujours avec le souci de faliciter la tâche en fonction de l'utilisation finale)
Qu'en penses-tu ?
Pourquoi pas
j'ai gardé la syntaxe d'origine de la fonction tournons, pour conserver les 2 méthodes (qui pourrait, elle aussi recevoir la structure en paramètre)
a noter que anglerot peut aussi être passé en paramètre à rotation et tournons , ou integeré à la structure
reste à modifier un peu le code pour que Figure ne soit pas Global, et il n'y a plus de variables globales![]()
Pourquoi donner de mauvaises habitudes![]()
Ok, nous allons faire comme çà, alors.![]()
Asdorve : je propose de finir celà cette nuit et que, demain, tu insères le zip final.
Ajoute un petit mot pour signaler la contribution de Thierry. Il le mérite bien et l'ajout de son nom ne peut que nous honorer
Par contre, Thierry : je ne comprends pas pourquoi tu as transféré dans les propositions de sources la discussion initiale... Elle risque de venir gêner les forumeurs à la recherche de source, puisque la discussion en elle-même n'est pas encore la proposition !
je vois que ça a avancé, merci Thierry pour tes interventions, plus on est de fous plus on rit...![]()
jmf, ça marche, transmet moi quand tu auras fini la nouvelle version et je l'insèrerais.
Je remplace l'existante, ou je le rajoute en plus.
nan, c'est pas le butEnvoyé par jmfmarques
![]()
je vous fini ce que j'ai commencer, et vous en faites ce que vous voulez
Bon....
Machine arrière toute....
Le fait d'avoir 2 Forms complique les choses (n'est-ce-pas Thierry ?).
J'ai trouvé un moyen relativement simple de résoudre cette difficulté là (en fait 2 moyens différents), mais je viens de décider de ne mettre en oeuvre ni l'un ni l'autre pour la raison qui suit (idée qui m'est venue en regardant la mer) :
Nous allons faire du projet en cours l'un des modules d'une série assez longue.
Chaque module sera présenté comme un projet à part entière mais, au fur et à mesure, sera intégré dans une application générale de dessin, englobant la quasi totalité des fonctions habituelles de dessin, y compris l'insertion de texte, de pinceaux, pipettes, gommes, diffuseurs, outils à flou, etc....etc...
Le nombre des outils (et par voie de conséquence des boîtes à outils) sera à ce point important à la fin qu'il convient d'ores et déjà de procéder autrement, à commencer par ce premier module (celui en cours).
Nous allons donc complètement modifier la présentation, de sorte à ce qu'elle demeure la même pour chacun des modules suivants et qu'ainsi, la compilation de l'ensemble des modules soit facilitée et ne donne pas lieu à la fabrication d'une usine à gaz.
Je commencerai cette nuit... mais risque de ne pas terminer cette nuit.
En attendant : le dernier zip reste donc le bon...
Pourquoi, à cause (entre autre) du code que vous avez collé dans le Mouse_down de la form de dessin ?Envoyé par jmfmarques
![]()
Tout-à-fait![]()
Or nous allons en avoir besoin et nous allons même le perfectionner (tu vas voir)
Et tu l'as vu toi aussi (n'est-ce-pas ?) : comment éviter la "publicité" d'au moins les coordonnées du centre ? On peut, on peut.... mais au prix de tremplins... et ce n'est pas bon du tout (pour cet outil, oui, mais, dans la perspective d'une compilation générale, pas bon, pas bon....)
Pour l'outil actuel, on pourrait soit laisser publics centrex et centrey, soit insérer 2 textboxes invisibles dans la Form principale et jouer avec leur événement change, et j'en passe et des meilleures... mais cela servirait sans doute pour cet outil mais nuirait à la visibilité d'un "assemblage" ultérieur.
Je sais que tu as vu les mêmes choses que moi (je n'en doute pas une seconde) et que, comme moi, tu t'es sans aucun doute amusé à rechercher tout un tas d'acrobaties (je pensais à toi en prenant mon café au bord de la mer). En conclusion : ce sont ces acrobaties (toutes, quelle qu'en serait la nature) qu'il nous faut éviter dans la perspective d'un assemblage des différents outils pour en faire un outil complet de dessin.
Ne t'inquiète pas... tu vas voir ce que nous allons faire (un peu de temps de réflexion - surtout - nous est nécessaire)![]()
ben, c'est simple il suffit de faire une classe
je vous mets ci-dessous, une version un peu plus pro, à vous de voir ce que vous en faites
J'ai aussi retouché un peu l'interface graphique pour l'adapter a Win XP
Et je vous ai mis aussi, pour le fun, un petit gadget de mon cru (déplacez la form1 par sa barre de titre, pour voir)
Tout ça pour permettre à notre ami Adsorve de progresser un peu plus
Amusez-vous bien
Edit : ZIP mis à jour
Bonjour Asdorve
Il'y a quelques mois j'ai eu la meme idée de rotationner un rectangle et puis finalement je l'ai fait mais plutot avec un ArcSinus.
Bonne continuation sur ton programme.
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager