Envoyé par : rmabrouk
Date : 13/05/2010 18:27
bonjour, Dans un popup j'ai un progress bar, j'ai besoin d'un changement de couleur de progress bar:comme suit
CurVal=30% alors la couleur de progress bar est rouge? CurVal=50% alors la couleur de progress bar est vert? CurVal=100% alors la couleur de progress bar est rose?
Envoyé par : mothsart
Date : 19/05/2010 19:39
Vu que j'ai eu des besoins quelques peu similaires, je t'ai créer ça. (ça ne sera pas systématique) Le code est perfectible vu qu'il a été créé dans la volée.
<?xml version="1.0" encoding="ISO-8859-1" ?> <?xml-stylesheet type="text/css" href="chrome://global/skin/" ?> <window xmlns:html="http://www.w3.org/1999/xhtml" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" > <script> <![CDATA[ var progress_bar, progmeter; window.addEventListener("load",start,true); function start(){ progress_bar = document.getAnonymousNodes(document.getElementById("my-progressmeter"))[0]; progmeter = document.getElementById("colorChanger"); progress_bar.setAttribute('style', '-moz-appearance:none;background-color:red;'); } function add_progress(){ var progress = parseInt(progmeter.getAttribute('value')) + 10; progmeter.setAttribute('value', progress); } function observe_percent(){ if(progmeter.getAttribute('value') > 30){ progress_bar.style.backgroundColor = 'green'; } if(progmeter.getAttribute('value') > 50){ progress_bar.style.backgroundColor = 'orange'; } } ]]> </script> <broadcasterset> <broadcaster id="colorChanger" value="0"/> </broadcasterset> <vbox flex="1" style="overflow: auto"> <hbox > <groupbox> <caption label="determined" /> <progressmeter id="my-progressmeter" style="-moz-appearance: none !important; background-color: white !important;" mode="determined" > <observes element="colorChanger" attribute="value" onbroadcast="observe_percent();"/> </progressmeter> <button label="Avance" oncommand="add_progress();" /> </groupbox> </hbox> </vbox> </window>
Si tu veux comprendre le fonctionnement, le mieux est de lire cette page
Le bouton et sa fonction add_progress() ne sont là que pour te permettre d'avoir un exemple clé en main.
N'hésites pas si tu as des questions... le but étant d'apprendre.
(il vaut apprendre à un homme à pêcher plutôt que de lui offrir un poisson ;))
Il n'est plus possible de poster des messages dans ce forum.
Copyright © 2003-2013 association xulfr, 2013-2016 Laurent Jouanneau - Informations légales.
Mozilla® est une marque déposée de la fondation Mozilla.
Mozilla.org™, Firefox™, Thunderbird™, Mozilla Suite™ et XUL™
sont des marques de la fondation Mozilla.