Accueil > > > FULLSCROLLBAR: AS3 SCROLLBAR CLASS
FULLSCROLLBAR: AS3 SCROLLBAR CLASS
Information sur la source
Description
FullScrollbar est une classe de Scrollbar en ActionScript 3.0. Destinée aux clips ayant un contenu verticalement étendu. Aperçu ici: http://www.helioflash.com/FullScrollbar Seulemen t 4 paramètres : - un clip cible - marge supérieure par rapport aux limites de la Scène - marge inférieure par rapport aux limites de la Scène - position sur l'axe horizontal La classe s'occupe du reste ! Et notamment des événements suivants: - ROLL_OUT - MOUSE_DOWN - MOUSE_UP - MOUSE_MOVE - MOUSE_LEAVE - MOUSE_WHEEL - RESIZE L'aperçu génère une erreur en local car il tente de communiquer avec la classe JavaScript "MacMouseWheel" (©Gabriel Bucknall) qui permet le scroll sous Mac OS X.
Source
- package
- {
-
-
- /*
- /////////////////////////////////////////////////////////////////////////////////////////////////////////////////
- ______ _________ ______
- / ____/_ __/ / / ___/______________ / / / /_ ____ ______
- / /_ / / / / / /\__ \/ ___/ ___/ __ \/ / / __ \/ __ `/ ___/
- / __/ / /_/ / / /___/ / /__/ / / /_/ / / / /_/ / /_/ / /
- /_/ \__,_/_/_//____/\___/_/ \____/_/_/_.___/\__,_/_/
-
- */
-
-
- import flash.display.Sprite;
- import flash.events.Event;
- import flash.events.MouseEvent;
- import flash.geom.Rectangle;
- import flash.geom.Matrix;
- import flash.display.GradientType;
- import flash.display.SpreadMethod;
-
-
- public class FullScrollbar extends Sprite
- {
-
-
-
- public var marginTop:int = 20;
- public var marginBottom:int = 20;
- public var targetHeight:int;
- public var target:Sprite;
-
- private var SCRB_BACKGROUND:Sprite;
- private var SCRB_HANDLER:Sprite;
- private var SCRB_status:Boolean = false;
- private var SCRB_scrollY:int = 0;
- private var SCRB_handlerY:int = 0;
- private var SCRB_maxHeight:int;
-
-
-
-
- public function KillerScrollbar()
- {
- trace("FullScrollbar: Hello!");
- };
- public function resize()
- {
- SCRB_handlerY = SCRB_HANDLER.y;
- SCRB_scrollY = 0;
- render(0);
- };
-
-
- /*
- /////////////////////////////////////////////////////////////////////////////////////////////////////////////////
- _ _ __
- (_)___ (_) /_
- / / __ \/ / __/
- / / / / / / /_
- /_/_/ /_/_/\__/
-
- */
-
- public function init():void
- {
-
- var matr:Matrix = new Matrix();
- matr.createGradientBox(20, 1, 0, 0, 0);
-
- SCRB_BACKGROUND = new Sprite();
- SCRB_BACKGROUND.graphics.beginGradientFill(GradientType.LINEAR, [0x999999, 0xBBBBBB], [1, 1], [0x00, 0xFF], matr, SpreadMethod.PAD);
- SCRB_BACKGROUND.graphics.drawRoundRect(0, 0, 20, 100, 20, 20);
- SCRB_BACKGROUND.graphics.endFill();
- var grid1:Rectangle = new Rectangle(1, 20, 18, 60);
- SCRB_BACKGROUND.scale9Grid = grid1;
- addChild(SCRB_BACKGROUND);
-
- SCRB_HANDLER = new Sprite();
- SCRB_HANDLER.graphics.beginGradientFill(GradientType.LINEAR, [0x444444, 0x000000], [1, 1], [0x00, 0xFF], matr, SpreadMethod.PAD);
- SCRB_HANDLER.graphics.drawRoundRect(0, 0, 20, 50, 20, 20);
- SCRB_HANDLER.graphics.endFill();
- var grid2:Rectangle = new Rectangle(1, 20, 18, 10);
- SCRB_HANDLER.scale9Grid = grid2;
- addChild(SCRB_HANDLER);
-
- SCRB_HANDLER.addEventListener( MouseEvent.MOUSE_DOWN, EVT_HANDLER_mouseDown );
- SCRB_HANDLER.addEventListener( MouseEvent.MOUSE_UP, EVT_HANDLER_mouseUp );
- this.stage.addEventListener( MouseEvent.MOUSE_WHEEL, EVT_STAGE_mouseWheel );
- this.stage.addEventListener( Event.MOUSE_LEAVE, EVT_STAGE_mouseLeave );
- this.stage.addEventListener( Event.RESIZE, EVT_STAGE_resize );
- trace("FullScrollbar: Ready");
-
- resize();
-
- };
-
-
- /*
- /////////////////////////////////////////////////////////////////////////////////////////////////////////////////
- __ __
- _____/ /_____ _____ ____ ___ _ _____ ____ / /______
- / ___/ __/ __ `/ __ `/ _ \ / _ \ | / / _ \/ __ \/ __/ ___/
- (__ ) /_/ /_/ / /_/ / __/ / __/ |/ / __/ / / / /_(__ )
- /____/\__/\__,_/\__, /\___/ \___/|___/\___/_/ /_/\__/____/
- /____/
- */
-
- public function EVT_STAGE_mouseWheel( e:MouseEvent ):void
- {
- SCRB_handlerY = SCRB_HANDLER.y;
- SCRB_scrollY = 0;
- var eDelta = int(e.delta);
- if( eDelta != -1 ) if( eDelta != 0 ) if( eDelta != 1 ) render( eDelta * (-6) );
- };
- public function EVT_STAGE_mouseMove( e:MouseEvent ):void
- {
- render(e.stageY);
- };
- public function EVT_STAGE_releaseOutside( e:MouseEvent ):void
- {
- SCRB_status = false;
- e.target.stage.removeEventListener( MouseEvent.MOUSE_UP, EVT_STAGE_releaseOutside );
- e.target.stage.removeEventListener( MouseEvent.MOUSE_MOVE, EVT_STAGE_mouseMove );
- };
- public function EVT_STAGE_mouseLeave( e:Event ):void
- {
- if( SCRB_status )
- {
- SCRB_status = false;
- e.target.stage.removeEventListener( MouseEvent.MOUSE_UP, EVT_STAGE_releaseOutside );
- e.target.stage.removeEventListener( MouseEvent.MOUSE_MOVE, EVT_STAGE_mouseMove );
- }
- };
- public function EVT_STAGE_resize( e:Event ):void
- {
- resize();
- };
-
-
- /*
- /////////////////////////////////////////////////////////////////////////////////////////////////////////////////
- __ ____ __
- / /_ ____ _____ ____/ / /__ _____ ___ _ _____ ____ / /______
- / __ \/ __ `/ __ \/ __ / / _ \/ ___/ / _ \ | / / _ \/ __ \/ __/ ___/
- / / / / /_/ / / / / /_/ / / __/ / / __/ |/ / __/ / / / /_(__ )
- /_/ /_/\__,_/_/ /_/\__,_/_/\___/_/ \___/|___/\___/_/ /_/\__/____/
-
- */
-
- public function EVT_HANDLER_mouseDown( e:MouseEvent ):void {
- SCRB_handlerY = SCRB_HANDLER.y;
- SCRB_scrollY = e.stageY;
- SCRB_HANDLER.addEventListener( MouseEvent.ROLL_OUT, EVT_HANDLER_rollOut, false, 0, true );
- e.target.stage.addEventListener( MouseEvent.MOUSE_MOVE, EVT_STAGE_mouseMove, false, 0, true );
- e.target.stage.addEventListener( MouseEvent.MOUSE_UP, EVT_HANDLER_mouseUp, false, 0, true );
- SCRB_status = true;
- };
- public function EVT_HANDLER_mouseMove( e:MouseEvent ):void
- {
- if( SCRB_status ) render( e.stageY );
- };
- public function EVT_HANDLER_rollOut( e:MouseEvent ):void
- {
- if( e.buttonDown ){
- e.target.stage.addEventListener( MouseEvent.MOUSE_UP, EVT_STAGE_releaseOutside, false, 0, true );
- }
- e.target.removeEventListener( MouseEvent.ROLL_OUT, EVT_HANDLER_rollOut );
- };
- public function EVT_HANDLER_mouseUp( e:MouseEvent ):void
- {
- SCRB_status = false;
- e.target.stage.removeEventListener( MouseEvent.MOUSE_MOVE, EVT_STAGE_mouseMove );
- e.target.stage.removeEventListener( MouseEvent.MOUSE_UP, EVT_HANDLER_mouseUp );
- };
-
-
- /*
- /////////////////////////////////////////////////////////////////////////////////////////////////////////////////
- __
- ________ ____ ____/ /__ _____
- / ___/ _ \/ __ \/ __ / _ \/ ___/
- / / / __/ / / / /_/ / __/ /
- /_/ \___/_/ /_/\__,_/\___/_/
-
- */
-
- public function render( Y:int ):void
- {
- targetHeight = target.height;
- SCRB_maxHeight = stage.stageHeight - marginTop - marginBottom;
- this.y = marginTop;
-
- var backgroundHeight:int = SCRB_maxHeight;
- if(backgroundHeight<40) backgroundHeight = 40;
- SCRB_BACKGROUND.height = backgroundHeight;
-
- if(target != null)
- {
- if( targetHeight > SCRB_maxHeight )
- {
-
- SCRB_HANDLER.visible = true;
- SCRB_BACKGROUND.alpha = 1;
- var yTarget:int;
- var delta:int = Y - SCRB_scrollY;
- var handlerHeight:int = Math.floor( ( backgroundHeight * SCRB_maxHeight / targetHeight) / 1 );
- if( handlerHeight < 30) handlerHeight = 30;
- SCRB_HANDLER.height = handlerHeight;
- if( delta <= -SCRB_handlerY ) delta = -SCRB_handlerY;
- if( delta > backgroundHeight - handlerHeight - SCRB_handlerY ) delta = Math.floor( backgroundHeight - handlerHeight - SCRB_handlerY );
- var SCRB_handlerNewY:int = SCRB_handlerY + delta;
- SCRB_HANDLER.y = SCRB_handlerNewY;
- yTarget = Math.floor( marginTop - ( ( SCRB_handlerNewY * ( targetHeight - SCRB_maxHeight ) / ( backgroundHeight - handlerHeight ) ) ) );
- target.y = yTarget;
-
- trace( "FullScrollbar: "+String( Math.floor(SCRB_handlerNewY * 100 / ( backgroundHeight - handlerHeight ) ) )+"%" );
- }
- else
- {
- SCRB_HANDLER.y = 0;
- SCRB_scrollY = 0;
- target.y = marginTop;
- SCRB_HANDLER.visible = false;
- SCRB_BACKGROUND.alpha = .2;
- }
-
- }
-
- };
-
-
-
-
- }
- }
package
{
/*
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////
______ _________ ______
/ ____/_ __/ / / ___/______________ / / / /_ ____ ______
/ /_ / / / / / /\__ \/ ___/ ___/ __ \/ / / __ \/ __ `/ ___/
/ __/ / /_/ / / /___/ / /__/ / / /_/ / / / /_/ / /_/ / /
/_/ \__,_/_/_//____/\___/_/ \____/_/_/_.___/\__,_/_/
*/
import flash.display.Sprite;
import flash.events.Event;
import flash.events.MouseEvent;
import flash.geom.Rectangle;
import flash.geom.Matrix;
import flash.display.GradientType;
import flash.display.SpreadMethod;
public class FullScrollbar extends Sprite
{
public var marginTop:int = 20;
public var marginBottom:int = 20;
public var targetHeight:int;
public var target:Sprite;
private var SCRB_BACKGROUND:Sprite;
private var SCRB_HANDLER:Sprite;
private var SCRB_status:Boolean = false;
private var SCRB_scrollY:int = 0;
private var SCRB_handlerY:int = 0;
private var SCRB_maxHeight:int;
public function KillerScrollbar()
{
trace("FullScrollbar: Hello!");
};
public function resize()
{
SCRB_handlerY = SCRB_HANDLER.y;
SCRB_scrollY = 0;
render(0);
};
/*
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////
_ _ __
(_)___ (_) /_
/ / __ \/ / __/
/ / / / / / /_
/_/_/ /_/_/\__/
*/
public function init():void
{
var matr:Matrix = new Matrix();
matr.createGradientBox(20, 1, 0, 0, 0);
SCRB_BACKGROUND = new Sprite();
SCRB_BACKGROUND.graphics.beginGradientFill(GradientType.LINEAR, [0x999999, 0xBBBBBB], [1, 1], [0x00, 0xFF], matr, SpreadMethod.PAD);
SCRB_BACKGROUND.graphics.drawRoundRect(0, 0, 20, 100, 20, 20);
SCRB_BACKGROUND.graphics.endFill();
var grid1:Rectangle = new Rectangle(1, 20, 18, 60);
SCRB_BACKGROUND.scale9Grid = grid1;
addChild(SCRB_BACKGROUND);
SCRB_HANDLER = new Sprite();
SCRB_HANDLER.graphics.beginGradientFill(GradientType.LINEAR, [0x444444, 0x000000], [1, 1], [0x00, 0xFF], matr, SpreadMethod.PAD);
SCRB_HANDLER.graphics.drawRoundRect(0, 0, 20, 50, 20, 20);
SCRB_HANDLER.graphics.endFill();
var grid2:Rectangle = new Rectangle(1, 20, 18, 10);
SCRB_HANDLER.scale9Grid = grid2;
addChild(SCRB_HANDLER);
SCRB_HANDLER.addEventListener( MouseEvent.MOUSE_DOWN, EVT_HANDLER_mouseDown );
SCRB_HANDLER.addEventListener( MouseEvent.MOUSE_UP, EVT_HANDLER_mouseUp );
this.stage.addEventListener( MouseEvent.MOUSE_WHEEL, EVT_STAGE_mouseWheel );
this.stage.addEventListener( Event.MOUSE_LEAVE, EVT_STAGE_mouseLeave );
this.stage.addEventListener( Event.RESIZE, EVT_STAGE_resize );
trace("FullScrollbar: Ready");
resize();
};
/*
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////
__ __
_____/ /_____ _____ ____ ___ _ _____ ____ / /______
/ ___/ __/ __ `/ __ `/ _ \ / _ \ | / / _ \/ __ \/ __/ ___/
(__ ) /_/ /_/ / /_/ / __/ / __/ |/ / __/ / / / /_(__ )
/____/\__/\__,_/\__, /\___/ \___/|___/\___/_/ /_/\__/____/
/____/
*/
public function EVT_STAGE_mouseWheel( e:MouseEvent ):void
{
SCRB_handlerY = SCRB_HANDLER.y;
SCRB_scrollY = 0;
var eDelta = int(e.delta);
if( eDelta != -1 ) if( eDelta != 0 ) if( eDelta != 1 ) render( eDelta * (-6) );
};
public function EVT_STAGE_mouseMove( e:MouseEvent ):void
{
render(e.stageY);
};
public function EVT_STAGE_releaseOutside( e:MouseEvent ):void
{
SCRB_status = false;
e.target.stage.removeEventListener( MouseEvent.MOUSE_UP, EVT_STAGE_releaseOutside );
e.target.stage.removeEventListener( MouseEvent.MOUSE_MOVE, EVT_STAGE_mouseMove );
};
public function EVT_STAGE_mouseLeave( e:Event ):void
{
if( SCRB_status )
{
SCRB_status = false;
e.target.stage.removeEventListener( MouseEvent.MOUSE_UP, EVT_STAGE_releaseOutside );
e.target.stage.removeEventListener( MouseEvent.MOUSE_MOVE, EVT_STAGE_mouseMove );
}
};
public function EVT_STAGE_resize( e:Event ):void
{
resize();
};
/*
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////
__ ____ __
/ /_ ____ _____ ____/ / /__ _____ ___ _ _____ ____ / /______
/ __ \/ __ `/ __ \/ __ / / _ \/ ___/ / _ \ | / / _ \/ __ \/ __/ ___/
/ / / / /_/ / / / / /_/ / / __/ / / __/ |/ / __/ / / / /_(__ )
/_/ /_/\__,_/_/ /_/\__,_/_/\___/_/ \___/|___/\___/_/ /_/\__/____/
*/
public function EVT_HANDLER_mouseDown( e:MouseEvent ):void {
SCRB_handlerY = SCRB_HANDLER.y;
SCRB_scrollY = e.stageY;
SCRB_HANDLER.addEventListener( MouseEvent.ROLL_OUT, EVT_HANDLER_rollOut, false, 0, true );
e.target.stage.addEventListener( MouseEvent.MOUSE_MOVE, EVT_STAGE_mouseMove, false, 0, true );
e.target.stage.addEventListener( MouseEvent.MOUSE_UP, EVT_HANDLER_mouseUp, false, 0, true );
SCRB_status = true;
};
public function EVT_HANDLER_mouseMove( e:MouseEvent ):void
{
if( SCRB_status ) render( e.stageY );
};
public function EVT_HANDLER_rollOut( e:MouseEvent ):void
{
if( e.buttonDown ){
e.target.stage.addEventListener( MouseEvent.MOUSE_UP, EVT_STAGE_releaseOutside, false, 0, true );
}
e.target.removeEventListener( MouseEvent.ROLL_OUT, EVT_HANDLER_rollOut );
};
public function EVT_HANDLER_mouseUp( e:MouseEvent ):void
{
SCRB_status = false;
e.target.stage.removeEventListener( MouseEvent.MOUSE_MOVE, EVT_STAGE_mouseMove );
e.target.stage.removeEventListener( MouseEvent.MOUSE_UP, EVT_HANDLER_mouseUp );
};
/*
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////
__
________ ____ ____/ /__ _____
/ ___/ _ \/ __ \/ __ / _ \/ ___/
/ / / __/ / / / /_/ / __/ /
/_/ \___/_/ /_/\__,_/\___/_/
*/
public function render( Y:int ):void
{
targetHeight = target.height;
SCRB_maxHeight = stage.stageHeight - marginTop - marginBottom;
this.y = marginTop;
var backgroundHeight:int = SCRB_maxHeight;
if(backgroundHeight<40) backgroundHeight = 40;
SCRB_BACKGROUND.height = backgroundHeight;
if(target != null)
{
if( targetHeight > SCRB_maxHeight )
{
SCRB_HANDLER.visible = true;
SCRB_BACKGROUND.alpha = 1;
var yTarget:int;
var delta:int = Y - SCRB_scrollY;
var handlerHeight:int = Math.floor( ( backgroundHeight * SCRB_maxHeight / targetHeight) / 1 );
if( handlerHeight < 30) handlerHeight = 30;
SCRB_HANDLER.height = handlerHeight;
if( delta <= -SCRB_handlerY ) delta = -SCRB_handlerY;
if( delta > backgroundHeight - handlerHeight - SCRB_handlerY ) delta = Math.floor( backgroundHeight - handlerHeight - SCRB_handlerY );
var SCRB_handlerNewY:int = SCRB_handlerY + delta;
SCRB_HANDLER.y = SCRB_handlerNewY;
yTarget = Math.floor( marginTop - ( ( SCRB_handlerNewY * ( targetHeight - SCRB_maxHeight ) / ( backgroundHeight - handlerHeight ) ) ) );
target.y = yTarget;
trace( "FullScrollbar: "+String( Math.floor(SCRB_handlerNewY * 100 / ( backgroundHeight - handlerHeight ) ) )+"%" );
}
else
{
SCRB_HANDLER.y = 0;
SCRB_scrollY = 0;
target.y = marginTop;
SCRB_HANDLER.visible = false;
SCRB_BACKGROUND.alpha = .2;
}
}
};
}
}
Conclusion
Inclus avec :
- MacMouseWheel AS3 class "Class that supports using the mouseWheel on Mac OS, requires javascript class swfmacmousewheel.js" @author Gabriel Bucknall
- swfObject Pour afficher la preview et permettre l'utilisation de la classe AS3 MacMouseWheel.
Fichier Zip
Historique
- 01 septembre 2008 04:27:03 :
- Mise à jour de l'affichage de cette page.
Sources de la même categorie
Commentaires et avis
Discussions en rapport avec ce code source dans le forum
Class ActionScript [ par maitrechu ]
Bonjour, je cherche des tutoriaux sur comment se servir utilement des classes ActionScript, et de toutes les possibilités qu'elles offrent. J'ai
Liaison mouseWheel/Scrollbar navigateur perdu [ par julian696 ]
Bonjour à tous,Après quelques jours de recherche et plusieurs forums épluchés sans réponses,je tente une dernière fois de trouver une solution a mon p
AS3 importer une commande AS depuis un XML [ par ourso ]
Bonjour une petite question, qui me pose toujours un problème.J'ai besoin d'inclure quelques commandes pour le lancement d'une appli dans une balise X
AS3: couper le son d' un clip. [ par Dodjix ]
Bonjour,Voilà je m 'essai depuis peu à l'apprentissage d' AS3, mais je rencontre un problème.J'ai créer un clip avec sur un des calques une animation
scrollbar - action a repeter tant que le bouton est enfoncé [ par lapuce87 ]
Bonjour tout le monde,J'essaye de créer une scrollbar a l aide de 2 boutons (bt_down & bt_up).Actuellement, j arrive a faire en sorte de monter ou
{ et } en AS3 [ par Nainphomane ]
Salut, question bete mais pourtant ca me gonfle ^^ je n'arrive pas à entrer de { dans mon panneau Action sur Flash CS3 en actionscript 3, pourtant j'a
passage d'une variable d'un swf en AS2 à un SWF en AS3 [ par ruchercreusois ]
Bonjour J'aimerai d'un swf en AS2 passer l'adresse à afficher à GoogleMapFlashCS3 qui serait appelé par un LoadmovieNumOr _global.data n'a pas l'air d
problème actionscript 2 [ par lolosushi ]
Bonjour! j'avais déjà poser une question pour un problème de déplacement, qui est maintenant réglé mais a présent je me confronte a un autre : c'est u
Recherche composant AS3 - playlist [ par fxlamare ]
Bonsoir, Je recherche un composant AS3 (ou des idées) capable de répondre en partie à ma problématique (voire même entièrement soyons fou, je suis
élimination d'un "TextField" en as3 [ par inaden ]
Bonjour,je n'arrive pas à trouver s'il existe une fonction permettant de supprimer un champ texte crée comme cela : var monTexte:TextField = new TextF
|
Derniers Blogs
SQL SERVER : QUERY NOTIFICATION OU COMMENT êTRE NOTIFIé DE MODIFICATIONS DE DONNéES CôTé APPLICATIONSQL SERVER : QUERY NOTIFICATION OU COMMENT êTRE NOTIFIé DE MODIFICATIONS DE DONNéES CôTé APPLICATION par christian
Cette fonctionnalité à vue le jour dans Ado.Net 2.0 et s'appuie sur SQL Server 2005 (et plus) même si elle fonctionne avec SQL Server 2000. Le principe de fonctionnement côté applicatif est assez simple, on fournit une requête et lorsque le résultat d...
Cliquez pour lire la suite de l'article par christian [WF4] UN BINDING ACTIVITY/ACTIVITYDESIGNER QUI PASSE MAL?[WF4] UN BINDING ACTIVITY/ACTIVITYDESIGNER QUI PASSE MAL? par JeremyJeanson
Certain d'entre vous on peut être vécu cette situation embarrassante après quelques temps passer avec WF4 : Au début avec mon " ActivityDesigner" , tout allait bien. Et puis un jour j'ai au des problèmes de " Binding" . Alors nous sommes allé sur le site ...
Cliquez pour lire la suite de l'article par JeremyJeanson MYTIC - SHAREPOINT 2010 : DéJà UN MYTHE MICROSOFT ?MYTIC - SHAREPOINT 2010 : DéJà UN MYTHE MICROSOFT ? par junarnoalg
La prochaine session de MyTIC aura lieu à Namur, le 23 mars prochain. Pendant presque une heure, nous parlerons de SharePoint 2010. Voici un aperçu du programme.
Accueil : 17h30 Début de la session : 18h00 - Les nouvelles int...
Cliquez pour lire la suite de l'article par junarnoalg [MIX10] KEYNOTE DEUXIèME JOURNéE - INTERNET EXPLORER 9, HTML5, VISUAL STUDIO 2010, ODATA[MIX10] KEYNOTE DEUXIèME JOURNéE - INTERNET EXPLORER 9, HTML5, VISUAL STUDIO 2010, ODATA par cyril
Le deuxième keynote du mix fut très riche en contenu. Internet Explorer 9 Juste un après le lancement de Internet Explorer 8, Microsoft a dévoilé les nouveautés de Internet Explorer 9. Désormais, IE supportera HTML5, SVG et CSS3. L'élément ...
Cliquez pour lire la suite de l'article par cyril
Forum
RE : PROBLEME RE : PROBLEME par yoplaboum69
Cliquez pour lire la suite par yoplaboum69
Logiciels
Academy System (10.9.4.0)ACADEMY SYSTEM (10.9.4.0)Logiciel de gestion des établissements.
- élèves/étudiants (inscription, dossier, absence...)
-... Cliquez pour télécharger Academy System Xilisoft Convertisseur Vidéo Ultimate (5.1.39.0305)XILISOFT CONVERTISSEUR VIDéO ULTIMATE (5.1.39.0305)Xilisoft Convertisseur Vidéo Ultimate est un outil puissant de conversion vidéo, facile à utilise... Cliquez pour télécharger Xilisoft Convertisseur Vidéo Ultimate Xilisoft DVD Ripper Ultimate (5.0.64.0304)XILISOFT DVD RIPPER ULTIMATE (5.0.64.0304)Xilisoft DVD Ripper Ultimate est un logiciel excellent pour copier et convertir DVD vers presque ... Cliquez pour télécharger Xilisoft DVD Ripper Ultimate Rigs of Rods (63.3)RIGS OF RODS (63.3)c'est un jeu de multi-simulation camions,autobus voitures, avions, bateaux, hélicoptère avec défo... Cliquez pour télécharger Rigs of Rods
|