CADxp: Barre de progression - CADxp

Aller au contenu

Page 1 sur 1
  • Vous ne pouvez pas commencer un sujet
  • Vous ne pouvez pas répondre à ce sujet

Barre de progression Afficher une barre de progression en lien avec une boucle

#1 L'utilisateur est hors-ligne   Elun 

  • ceinture orange
  • Groupe : Membres
  • Messages : 21
  • Inscrit(e) : 04-mars 19

Posté 10 septembre 2019 - 14:03

Bonjour,

J'ai un programme qui est long en terme d'exécution et je souhaiterais savoir si quelqu'un a déjà étudié/recherché la création d'une barre de progression (ou chargement).

Ce qu'il se passe c'est que j'ai un incrément qui augmente de 1 à chaque passage de la boucle donc j'avais commencé par chercher avec ceci, me permettant de remplir une image via un pourcentage (par rapport à un maximum définissant l'arrêt de la boucle) :

Code LISP pour remplir l'image à chaque appel de la fonction (Progress) avec TimeCount la variable servant de compteur et TimeOut étant la valeur maximum de la boucle.
(defun Progress ()

		(start_image "ProgBar")
		(fill_image 0 0 (/ (* TimeCount fill_X) TimeOut) fill_Y 92)
		(end_image)
		(set_tile "Error" (strcat (itoa TimeCount) " / " (itoa TimeOut)))

	)


Code DCL correspondant à la BDL qui doit simplement afficher la barre au lancement du programme et disparaître lorsque la barre arrive à 100%.
MAJCALQUE_ProgressBar: dialog {
	fixed_width = true ;
	label = "Barre de progression - commande MAJCALQUE" ;
	key = "ProgressBar" ;

	: text {
		label = "La commande MAJCALQUE est en cours d'exécution, veuillez patienter SVP." ;
		alignment = centered ;
	}
	: image {
		key = "ProgBar" ;
		fixed_width = 100 ;
		height = 2 ;
	}
	: row {
		: errtile {
			key = "Error" ;
			label = "" ;
			width = 30 ;
			alignment = centered ;
		}
	}
	: row {
		: button {
			key = "OK" ;
			label = "OK" ;
		}
		: button {
			key = "Cancel" ;
			label = "Annuler" ;
			is_cancel = true ;
		}
	}

}

Le problème de l'utilisation du langage DCL est qu'une boîte de dialogue possède obligatoirement un bouton OK Cancel (pas possible d'avoir une fenêtre simple sans boutons et uniquement une image). Or le but de la manoeuvre c'est que l'utilisateur n'est pas besoin d'appuyer sur un bouton pour lancer la barre de progression (je fais apparaître cette fenêtre normalement 5 fois au cours du programme).

Je me souviens avoir chercher également du côté de la barre de commande mais je n'ai plus les bout de codes que j'avais testé.

Donc si vous avez une idée de la manière dont on pourrait s'y prendre pour afficher une barre de progression sous autocad sans intervention de l'utilisateur, je vous en serait très reconnaissant.
0

Partager ce sujet :


Page 1 sur 1
  • Vous ne pouvez pas commencer un sujet
  • Vous ne pouvez pas répondre à ce sujet

1 utilisateur(s) en train de lire ce sujet
0 membre(s), 1 invité(s), 0 utilisateur(s) anonyme(s)