Le lancement de Firefox par appui sur un bouton graphique est une fonctionnalité très pratique qui permet aux utilisateurs d’Ubuntu de lancer leur navigateur web préféré en un seul clic. Cette fonctionnalité est rendue possible grâce à un logiciel appelé Processing, qui permet aux utilisateurs de créer des scripts pour automatiser des tâches répétitives. Dans cet article, nous allons vous expliquer comment configurer Processing pour lancer Firefox par appui sur un bouton graphique sur votre système Ubuntu.
Processing Lancer Firefox par appui sur un bouton graphique (Ubuntu):
Explication
- L’appui sur un bouton graphique déclenche le lancement de Firefox à l’adresse web voulue
Ressources utiles
- les arguments de ligne de commande pour firefox : http://kb.mozillazine.org/Command_line_arguments
Le programme
// généré avec le générateur de code Processing
// www.mon-club-elec.fr
// par X. HINAULT – Avril 2011 – tous droits réservés
/////////////// Description du programme ////////////
// Utilise la ligne de commande programmée (Ubuntu)
// Utilise mplayer pour jouer des sons (Ubuntu)
// Utilise la librairie GUI controlP5
// Utilise un/des bouton(s) simple(s) (Button)
/*
Lance Firefox – site BFMTV par appui sur un bouton graphique.
*/
// XXXXXXXXXXXXXXXXXXXXXX ENTETE DECLARATIVE XXXXXXXXXXXXXXXXXXXXXX
// inclusion des librairies utilisées
import controlP5.*; // importe la librairie GUI controlP5
// cette librairie doit être présente dans le répertoire /libraries du répertoire Processing
// voir ici : http://www.sojamo.de/libraries/controlP5/
// déclaration objets
String[] command ; // pour envoi ligne de commande
String nomFichier=« r2d2_4.mp3 »; // variable pour nom du fichier son à jouer
String cheminFichier=« /home/hinault/Bureau/mes_sons/ »; // chemin complet avec / de fin
ControlP5 controlP5; // déclare un objet principal de la librairie GUI controlP5
Button b1,b2; // déclare un/des objets Button
// Button [] b= new Button[n]; // crée un tableau de n Button b[i] – 1er indice est 0
// déclaration variables globales
//—— déclaration des variables de couleur utiles —-
int jaune=color(255,255,0);
int vert=color(0,255,0);
int rouge=color(255,0,0);
int bleu=color(0,0,255);
int noir=color(0,0,0);
int blanc=color(255,255,255);
int bleuclair=color(0,255,255);
int violet=color(255,0,255);
// XXXXXXXXXXXXXXXXXXXXXX Fonction SETUP XXXXXXXXXXXXXXXXXXXXXX
void setup(){ // fonction d’initialisation exécutée 1 fois au démarrage
// —- initialisation paramètres graphiques utilisés
colorMode(RGB, 255,255,255); // fixe format couleur R G B pour fill, stroke, etc…
fill(0,0,255); // couleur remplissage RGB
stroke (0,0,0); // couleur pourtour RGB
rectMode(CORNER); // origine rectangle : CORNER = coin sup gauche | CENTER : centre
imageMode(CORNER); // origine image : CORNER = coin sup gauche | CENTER : centre
//strokeWeight(0); // largeur pourtour
frameRate(30);// Images par seconde
// — initialisation fenêtre de base —
size(400, 400); // ouvre une fenêtre xpixels x ypixels
background(0,0,0); // couleur fond fenetre
// — initialisation des objets et fonctionnalités utilisées —
//======== Initialisation Objets GUI ControlP5 =========
controlP5 = new ControlP5(this); // initialise l’objet principal de la librairie GUI controlP5
// typeObjet nomObjet=controlP5.addObjet(paramètres); // pour info : déclaration / initialisation possible en 1 ligne
// Textfield field = controlP5.addTextfield(« myWindowTextfield »,70,130,100,20); // exemple
//======== Initialisation Objets Button =========
// addButton(String theName, float theValue, int theX, int theY, int theW, int theH)
b1=controlP5.addButton(« buttonA »,0,10,10,50,24); // initialise et ajoute un Button au ControlP5
b2=controlP5.addButton(« buttonB »,255,10,35,50,24); // initialise et ajoute un Button au ControlP5
// méthodes propres à l’objet Button
// méthodes communes à tous les controles (objet Controller)
b1.setLabelVisible(true); // affichage des labels
b1.setLabel(« Label »); // fixe label objet
b1.setDecimalPrecision(2); // fixe la précision
b1.setColorActive(color(255,0,0)); // fixe la couleur active
b1.setColorBackground(color(255,0,255)); // fixe couleur fond
b1.setColorForeground(color(0,0,255)); // fixe couleur avant
b1.setColorCaptionLabel(color(0,0,0)); // fixe couleur Label
b1.setColorValueLabel(color(0,0,255)); // fixe la couleur valeur
// setImages(PImage theImageDefault,PImage theImageOver, PImage theImageActive,PImage theImageHighlight)
// les images doivent etre de la meme taille que bouton, dans rép prog, type .jpg .png ..
// un toggle n’utilise que image Default, Over et Active
//b1.setImages(loadImage(« imageDefault.png »),loadImage(« imageOver.png »), loadImage(« imageActive.png »),loadImage(« imageDefault.png »));
} // fin fonction Setup
// XXXXXXXXXXXXXXXXXXXXXX Fonction Draw XXXXXXXXXXXXXXXXXXXX
void draw() { // fonction exécutée en boucle
} // fin de la fonction draw()
// XXXXXXXXXXXXXXXXXXXXXX Autres Fonctions XXXXXXXXXXXXXXXXXXXXXX
// Code pour la ligne de commande appelée par Processing
//——————— fonction lecture son avec Mplayer —————
void lanceFirefox(String adresseSite) {
command = new String[2]; // tableau String pour la ligne de commande
// mplayer /home/hinault/Bureau/mes_sons/r2d2_2.mp3 -quiet
command[0] = « firefox »;
command[1] = adresseSite;
//— exécution de la ligne de commande (code Java)
try {
Process p = exec(command); // exécute la commande
//— récupère la sortie de la commande dans la console de Processing
BufferedReader in = new BufferedReader(new InputStreamReader(p.getInputStream()));
String line = null;
while ((line = in.readLine()) != null) {
System.out.println(line);
}//fin while
} // fin try
catch (IOException e) { // gestion exception
e.printStackTrace();
} // fin catch
//— fin d’exécution de la ligne de commande —
} //——————— fin joueSonMplayer
// Gestion des évènements des objets GUI controlP5 —-
//—— fonction gestion globale des évènements GUI controlP5
public void controlEvent(ControlEvent theEvent) {
//println(theEvent.controller().name());// affiche le nom de l’évènement
}
// —— gestion évènement Button ——
void buttonA(int theValue) { // fonction évènement Button de meme nom – reçoit la valeur
println(« Evènement Button A avec valeur = « +theValue);
lanceFirefox(« http://www.bfmtv.com/rub/live/14/ »);
}
void buttonB(int theValue) { // fonction évènement Button de meme nom – reçoit la valeur
println(« Evènement Button B avec valeur = « +theValue);
}
//XXXXXXXXXXXXXXXXXX Fin du programme XXXXXXXXXXXXXXXXX
Voir ici :
Articles similaires:
- Processing : Test d’un bouton Image
- Processing :
- Saisir une chaîne dans un champ texte et l’envoyer vers le port Série
- EeePC-Bot : Interface Processing Mplayer + Espeaker + Envoi / Réception chaine série
- Régler la couleur du fond de la fenêtre à l’aide de 3 sliders
Articles Liés
- jQuery : Un clic bouton modifie un textarea
jQuery est une bibliothèque JavaScript très populaire qui permet aux développeurs web de créer des…
- Javascript : Graphique Dygraphs simple
Le Javascript est un langage de programmation très populaire et puissant qui permet aux développeurs…
- Javascript : Afficher 6 widgets graphiques fournis par une librairie graphique externe.
Le Javascript est un langage de programmation très populaire qui permet aux développeurs de créer…