Re: Jauge dans table mémoire

Posté par drcharly93 le 3/6/2004 19:09:27
Salut GoZeub,

Voici une petite procédure qui permet d'afficher des jauges dans des tables.

PROCEDURE AffJauge(sChamp,nIndice,ValJauge,MaxJauge,Texte)// Affichage de jauge manuelle
NewJauge 	est un entier 

// Calcul de la jauge en pourcentage:
NewJauge=ValJauge*100/MaxJauge	// Valeur à afficher entre 0 et 100
SI NewJauge<0 OU NewJauge>100 ALORS RETOUR

// Rend visible la jauge manuelle si nécessaire
//SI champ..Etat=Invisible ALORS champ..Etat=Actif

NewJauge=(Valeur[nIndice]..Largeur-10)*NewJauge/100
{sChamp}[nIndice]=gRectangle(0,1,NewJauge,{sChamp}[nIndice]..Hauteur-3,...
iRougeClair,iRougeClair)+...
gCadrage("C",+gStylo(iBleuClair)+Texte,0)


Bien entendu cette procédure peut être amélioré.

Pour appeler cette procédure:
Exemple d'une table qui se nome 'Table1' avec une colonne 'MaJauge' qui va contenir la valeur de la jauge

Cette procédure de gere pas le réaffichage des jauge lors d'un redimensionnement de la table.
//param 1 : Nom de la colonne de la table pour jauge
//Param 2 : Indice de la ligne de la table à traiter
//Param 3 : Valeur à affecter à la jauge
//Param 4 : Valeur maximum de la jauge
//Param 5 : Valeur du texte à afficherdans la jauge 
AffJauge("MaJauge",nIndiceTable,nValeurJauge,100,nValeurJauge+" %") 	


Cette contribution était de : http://old.wdforge.org/newbb/viewtopic.php?forum=12&topic_id=972&post_id=3992