Aller au contenu

stephan35

Membres
  • Compteur de contenus

    345
  • Inscription

  • Dernière visite

Tout ce qui a été posté par stephan35

  1. stephan35

    Liste déroulante

    Bonjour Gile, En fait OpenDCL gère l'ensemble des controles existants windows(Bontons,images,arbre,liste déroulante, zone graphique, etc.) et sans passer par VBA. Un alternative interressante pour développer des applications finies. http://img122.imageshack.us/img122/46/modulebornierjn1.th.jpg http://imageshack.us/img/butansn.png Quickpost this image to Myspace, Digg, Facebook, and others!
  2. stephan35

    Liste déroulante

    C'est quoi la question ? C'est long à paramétrer ???: OUI ! C'est long à tester ??? : OUI ! On peut faire la même chose en DCL : NON ! ;) PS: Tu te débrouilles bien ! Tramber m'avait filer quelques tuyaux au débuts, après j'ai vécu ma vie ! ;) J'ai développer une applie complête grace à OpenDCL dans le domaine électrique. Et ça tient la route ! [Edité le 16/7/2008 par stephan35]
  3. stephan35

    Liste déroulante

    Oui, Bien évidemment !!! ;) Si Si ! tu as tout compris ! Et cyrkan ??? (defun c:MaBoite_OnInitialize ( /) (dcl_ComboBox_AddList "Projet" "Form1" "ComboBox1" (Getlistedesfiltres))) )
  4. stephan35

    Liste déroulante

    Petit rapel : L'appellation des objets sous la forme Projet_Form1_ComboBox1 est à éviter .... (dcl_ComboBox_AddList "Projet" "Form1" "ComboBox1" (Getlistedesfiltres)) Certe plus lisible, mais j'ai eu des soucis .... c'est vous qui voyez, y en a qu'on essayer ...... ;)
  5. stephan35

    Liste déroulante

    Bonjour, Petite suggestion ..... Il faut utiliser l'évènement OnInitialize ! (defun c:MaBoite_OnInitialize ( /) (dcl_ComboBox_AddList Projet_Form1_ComboBox1 (Getlistedesfiltres)) ) L'évènement DropDown est mal utilisé .... il est appelé lors de la selection basse, hors, il y a paradoxe, car elle n'existe pas, donc ne peut pas se dérouler ... ;) A+
  6. stephan35

    Liste déroulante

    No soucy ;) J'ai eu moi, quelques soucis avec cette méthode, entre autre lors de l'utilsation des (VarName) depuis, ça roule impec ! Comme décrit précédemment, la subtilité subsiste dans la définition du nom de la boite lors de son chargement : (setq $boite (dcl_Project_Load "chemin/boite.exemple" T "boite.exemple")) $boite contient le nom de la boite(s) : "boite.exemple" (setq $dial1 "Form1") (dcl_Form_Show $boite $dial1) après , tu passes tous les autres paramètre à l'identique. Je me suis prémunis de pas mal de soucis de copier/coller en procédent ainsi .... De plus boite_Form1_Combo1 n'est pas forcément vrai , essaye avec un fichier boite.exemple.odcl ..... Autre petit conseil, raccourcir les noms des variavles dans les events est fortement suggéré parceque : C:maboiteamoi_formulairediagnostique1_OnCancel n'est pas super pratique à lire ;) C:Forme1_OnCancel est plus claire ! Etc . Après, sur 1000 développeurs, 1000 façons de faire .... :casstet:
  7. stephan35

    Liste déroulante

    T'es sur ??? Parceque, justement j'aurais préconisé la seconde ........ Qui à l'avantage de pouvoir justement passer les mnémo en variables, ce qui permet de créer des fonctions très facilement réutilisables .... Peut-être une question de point de vue ? ;) A+
  8. Merci pour la seconde couche sur la lecture de mon code patrick .... ;) Sinon, rien à dire, sinon, qu'une fois de plus, je dois me plier et te faire une courbette ... ;) Ton code fonctionne parfaitement bien, et tourne à 4 secondes..... Donc c'était le mien qui à un soucis ... Encore Merci et à plus !
  9. Merci bred, Milles excuses pour le nom de mes variables .... il n'y a pas de déclaration possible, alors j'utilise une espèce de protocole de signe pour me faciliter la tâche , et en théorie la relecture .... ;) Sinon, Oui le code vlisp fonctionne ..... !!!! Mais, c'est super long !!! 72 secondes contre 3 en Lisp !!!!! C'est pas top ! mais doit y avoir un truc pas correcte dans mon vlisp !
  10. stephan35

    Liste déroulante

    Bonjour, Pour te prémunir de tout problème de nom de variable, fait bien attention aux méthodes d'appel (ou de nommage de symboles) !!! De mon coté, je préfère l'ancienne méthode, plus claire à mon gout ! Le fichier boite.exemple.odcl Boite : Form1 Combo : Combo1 (dcl_Project_Load "chemin/boite.exemple" T "boite.exemple") (defun c:boite_Form1_OnInitialize ( /) (dcl_ComboBox_AddList boite_Form1_Combo1 (list "A" "B" "C")) ;ou (dcl_ComboBox_AddList "boite.exemple" "Form1" "Combo1" (list "A" "B" "C")) ) (dcl_Form_Show boite_Form1) ; ou (dcl_Form_Show "boite.exemple" "Form1") Utilise la version 4.1.2.1 d'openDCL, les autres ne sont pas encore stables ;) A+
  11. Bonjour, J'ai tenté, pour me faire plaisir, de taper quelques lignes en vlisp afin de remplacer certaines de mes vieilles fonctions Lisp. Cette fonction est simple, je scrute toutes les entités de mon dessin, et je remplace le texte "." des attributs et des textes par rien "". J'en ai un autre qui fait l'inverse ... Je me trouve maintenant devant un dilem, - mon programme vlisp est mal contruit ? - Le vlisp n'est pas prévu pour ça ? - Je continue mon ptit bonhomme de chemin en lisp .... Je traite 22600 entités Version Lisp: (3 secondes) :D (if (setq @&ssget (ssget "X" (list (cons 8 (strcat "*"))))) (progn (setq @#val1 0) (print (sslength @&ssget)) (repeat (sslength @&ssget) ; Cas du texte (if (= (cdr (assoc 0 (setq &entget (entget (setq @#ssname (ssname @&ssget @#val1)))))) "TEXT" ) (if (= (cdr (assoc 1 &entget)) ".") (entmod (setq &entget (subst (cons 1 "") (assoc 1 &entget) &entget))) ) ) ; Cas du symbole (if (and (=(cdr (assoc 0 &entget))"INSERT") (assoc 66 &entget) ) (progn (while (/= "SEQEND" (cdr (assoc 0 &entget))) (if (=(cdr (assoc 0 &entget))"ATTRIB") (if (= (cdr (assoc 1 &entget)) ".") (entmod(setq &entget (subst (cons 1 "") (assoc 1 &entget) &entget))) ) ) (setq &entget (entget (setq @#ssname (entnext @#ssname)))) ) ) ) (setq @#val1 (1+ @#val1)) ) ) ) Version Vlips (J'ai breaké au bout d'une minute !) :mad: (if (setq @&ssget (ssget "X" (list (cons 8 (strcat "*"))))) (progn (setq @#val1 0) (print (sslength @&ssget)) (repeat (sslength @&ssget) ; Cas du texte (setq @#object (vlax-ename->vla-object (setq @#ssname (ssname @&ssget @#val1)))) ; Peut-on modifier du texte ? (if (vlax-property-available-p @#object 'TextString) (if (= (vla-get-textstring @#object) ".") (vla-put-textstring @#object "") ) ) ; Peut-on modifier les attributs ? (if (vlax-property-available-p @#object 'hasattributes) (progn (setq @&object (vlax-invoke @#object 'getattributes)) (foreach @#for @&object (if (vlax-property-available-p @#for 'TextString) (if (= (vla-get-textstring @#for) ".") (vla-put-textstring @#for "") ) ) ) ) ) (setq @#val1 (1+ @#val1)) ) ) )
  12. Bonjour, Si tu connais le nom du calque, et si tu ne veux pas t'y accorcher, cela veut dire qu'il te dérange ??? Dans ce cas, créé toi une commande qui gèle le calque temporairement pendant ta commande, puis réaffiche le après ... Sinon, Lacrabe à raison, la boite de dialogue des calques est déjà assez complexe comme ça .... ;)
  13. Bonjour, Utilisateur aguéri d'OpenDCL, je recherche un traducteur bénévole (...) pour m'aider à traduire dans la langue de molière ce bel outils .... ;) Vous pourrez me retrouver sur : http://www.opendcl.com/forum/index.php?board=10.0 Cette dernière version est très prometteuse, elle intègre les nouvelles pallettes AutoCAD ... Merci à vous
  14. Bonjour à tous, Quelqu'un a -t-il de l'influence auprès de patrick pour remettre l'interface en marche ???? C'est vraiment trop le bazard, On arrive encore à consulter la base des messages (merci gile), mais pas suffisant à mon gout ! ...... :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( Sniff ...
  15. Bonjour à tous .... Juste encore un petit mot ..... Je ne suis pas donnateur, cependant j'ai bien profité de ce site, qui m'a permis confirmer et d'évoluer dans ma situation professionnelle (si si !) Je souhaite personnellement remercier toutes les personnes qui ont fait vivre ,et qui le font encore à ce jour , ce site. Je pense personnellement que dans son état actuel, le site est devenu difficilement exploitable (peut-être pour un non-donnateur), on ne voit plus les sujets en cours, et donc, on ne peut plus participer :( , ...............donc très dommagable car les utilisateurs vont chercher des solutions ailleurs .... Ce qui me dérange, c'est l'aspect mercantile de la transaction , très dur à concilier avec l'aspect déontologique d'un forum destiné à aider des utilisateurs par d'autres utilisateurs ..... Dans ce cas, pourquoi ne pas rétro céder une partie de la vente aux membres donnateurs, car ce sont eux aussi qui font vivre ce site .... D'un autre coté, je ne connais pas la part d'investissement de patrick, en temps et en argent, donc peut-être faut-il le prendre comme un retour sur investissement .... et non pas comme un coup financier spéculatif. Il est évident que de vouloir recréer un site avec le même contenu, les mêmes fonctions, et les mêmes membres est un pari risqué , mais pas impossible ..... Moi, la partie qui m'intéressait était le coté Lisp et Vlisp ....une page va peut-être se tourner ..... C'est vrai que d'imaginer un site "non-commercial" qui aurait pour vocation d'aider les utilisateurs d'autocad , monté sous forme d'association, est une idée à suivre ....
  16. C'est bizarre ! Quelqu'un avait le même soucis .... http://www.cadxp.com/sujetXForum-17431.htm ça marche !! En fait ça extrait les valeurs par défaut et non pas les valeurs d'un bloc selectionné .... Il me faudrait la même chose , mais pour un bloc selectionné grace à un ssget ... Merci [Edité le 11/2/2008 par stephan35]
  17. Bonjour ! Pour autocad c'est (getvar "_PKSER") Ah, Pour le matériel ??? Va voir dans la base de registre ??? et joue avec vl-registry-read ??? A+
  18. Bonjour ! Je cherche une solution pour trouver rapidement le nom d'une entité type "ATTDEF" sans balayer toute la base de donnée de définition du bloc. Ma solution actuelle : Je fais un SSGET sur le nom du bloc, puis je scrute toutes les entités qui suivent par entnext , jusqu'au SEQEND. Mon problème c'est que j'ai environ 1000 attributs dans mon bloc, et quand je dois tous les remplir, ça met du temps .... 1000x1000 scrutations. Merci PS : Vivement une bonne issue pour CAD XP
  19. Dommage !!! :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :( :(
  20. Oui ! J'avais oublier celle-ci !!! en fait, avec l'openDCL on a 2 méthodes pour accèder aux objets: 1 - Les variables fournies par le wizard : GPE:CONFIG 2 - L'accès "fichier" / "objet" : "DOSSIER" "GPE:CONFIG" Dans mon cas, le fichier s'appelle "DOSSIER.TRUC.ODCL" Ma boite s'appelle "GPE:CONFIG". Ps: seule la 1ère partie texte litérraire est prise en compte !!!! (setq @$GPE:ODCL "DOSSIER" @$GPE:BOX "GPE:CONFIG") (dcl_Form_Center @$GPE:ODCL @$GPE:BOX) Voilà !
  21. Bonjour, Malheureusement, après quelques recherches, je 'ai pas de solutions immédiates à te proposer. C'est que le verrouillage qui existe est uniquement à l'ouverture du fichier . :( Est-ce pour travailler uniquement sur un réseau local ??? Y a-t-il uniquement 1 utilisateur sur 1 poste particulier à pouvoir effectuer les corrections . Est-ce pour échanger ces fichiers avec d'autres utilisateurs par mail ??? Peut-être qu'en précisant les conditions d'utilisation et le but du vérouillage, nous pourrions t'apporter une solution intermédiaire .... Peut-être que la solution du xref pourrait te suffir ??? Clique sur l'icone bleu pour relancer ton sujet ! Peut-être que les vétérans de ce site ont déjà confrontés le problème . A+
  22. ça , c'est la classe !!!! ;) Merci BRED ! Et, sans vouloir abuser .... et pour reprendre ma première requête .... et le faire dans la macro qui est appelée, tu ne sais pas le faire , hein ? dit ? ;) Perso, je pense que non ! Il faudrait pouvoir intercepter l'interpreteur de commande, et afficher l'instruction lisp en cours, un truc vicieux, car ce serait peut-être récursif ... Encore merci BRED !
  23. Bonjour, J'ai peut-être quelques pistes ... Sous windows directement, et sur certains réseaux, tu peux, si tu es le propriétaire du fichier mettre celui-ci en lecture seule (Vista - Linux - Novell et ceux que j'oublie) http:// http://www.cadxp.com/modules.php?op=modload&name=XForum&file=viewthread&tid=16055#pid Si tu veux faire la manip exclusivement sur autocad, il faudra très certainement utiliser une programmation vlisp. Réexprime dans ce cas clairement ta demande dans ce sens .... ;) A+
  24. si si bred, on approche de ma vision idéale .... ;) Merci !
  25. AAARRRGGGHHHH ! La boulette ! !!!! : Quelqu'un sait évaluer les variables dans les fonctions ...... ???? (setq toto 3) (defun c:test () (Marq '(additionner 2 toto)) ) test : (additionner 2 toto) :laugh: :laugh: :laugh: :laugh: :laugh: :laugh: :laugh: Mais toto est égal à quoi !!!! ????? (La boulette !) (additionner 2 3) Aurait été idéeal ! C'est pas très pratique pour evaluer toto, surtout lorsque c'est une valeur imbriquer au nième niveau Quelqu'un saurait me calculer et me retourner le contenu de toto dans son évaluation ???? :casstet: :casstet: :casstet: :casstet: :casstet: Merci !!!!
×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer. Politique de confidentialité