Une applet est un appel depuis un document HTML à au moins une classe Java qui elle même fera appel à d'autres classes Applet de la bibliotèque fournie.
Une classe doit être écrite avec un traitement de texte (document.java) puis compilée - Mac : tirer le fichier sur l'icône du compilateur; PC : exécuter la commande javac document.java depuis le répertoir contenant Javac . Le document compilé portera le même nom que le fichier source mais avec l'extension .CLASS.Pour créer des classes, il faut avoir un compilateur, alors que les biblothèques sont fournies avec les navigateurs.
note : seuls les navigateurs reçents comprennent Java 1.3
Le but de ce document n'est pas de définir toutes les classes Java et toutes les possibilité de Java ( menu, traitement de fichiers, etc.) mais de donner quelques bases pour démarrer "en douceur".
- les constructeurs
- les opérateurs
- les instructions
- les objets
les fonds
- les variables
- conversion de type
textes:
- inscrire du texte ( dessiner du texte)
- passage de paramètres
- commentaires
- rafraîchissement (exemple)
dessins
- dessine des lignes :
- dessine une suite de lignes
- formes:
- dessine des polygones (courbes - sinus)
- dessine des polygones plein
- divers - oval, arc -(exemples)
- rafraîchissement du graphique
élements de conrôle
- Etiquettes - texte sur une ligne - (Label)
- Champs texte - un rectangle pour entrer un texte - (TextField)
- zone de texte - idem champ texte mais sur plusieurs lignes - (TextArea)
- cases à cocher - bouton radio - (Checkbox)
- boutons d'option - bouton radio mais un seul actif par groupe - (CheckboxGroup)
- Listes déroulantes - choix d'une option parmis plusieurs dont une seule est visible "au repos" (Choice)
- zones de listes -choix d'options parmis plusieurs dont plusieurs sont visibles "au repos" (List)
- Boutons de commande - (Button)
Souris
Application dans une fenêtre
- introduction
- gestion de la fenêtre
- menu - affichage
- menu - gestion des commandes
Voir un exemple avec boutons et gestion de la souris : le démineur
Introduction :
Pour créer une Applet, il faut un éditeur de texte (même rudimentaire). Il faut une compilateur et un peu de patience.
Le document initial doit avoir l'extention .java
Pour le compiler :
Sur mac: tirer l'icône du document xxx.java sur celle du compilateur est c'est déjà fini.
Pour Windows: faire appel aux commande dos, trouver le fichier dans lequel se trouve le compilateur
(par exemple : c:\Javadoc\jdk1.3.1\bin )
depuis cet endroit, s'il vous reste du temps, envoyer la commande suivant (il est préférable de mettre le document .java dans le bin, sinon il faut entrer son adresse complète et prier - puis eventuellement quand même mettre le document dans le bin...)
javac nom_doc.java
Après cette opération, il y deux possibilités:
a) Il y a quelque(s) erreur(s) de programmations (cas le plus fréquent) : corriger les premières erreurs (inutile de vouloir toutes les rechercher) et recommencer la tentative de compilation.
b) Il arrive parfois que le compilateur vous informe que tout c'est bien passé ( ce qui veut dire qu'il n'y pas d'erreur de syntaxe, mais pas que votre programme est juste ...). Dans ce cas vous trouverez un nouveau document nom_doc.class
note : pour actualiser une Applet dans un navigateur (sur PC) presser les touches : "Alt" et "F5" en même temps.
C'est ce fichier qui sera utile pour l'execution de votre programme. Mais ne jeter pas le .java trop vite, car il se peut que vous vouliez une fois faire une modification de votre programme.
Les fichiers que vous créez vont obligatoirement faire appel à d'autres classes déjà existante (fournie avec Java). Donc votre document doit avoir ce type de codes:
import java.applet.Applet; import java.awt.*; // contient les méthodes graphiqes import D_autres.class; // si besoin est... public class NOM_JUSTE extends java.applet.Applet // il faut ce qu'il faut |
|
variante 2 : import java.applet.*;
|
L'appel de l'Appet dans le document HTML est quelque chose comme :
<APPLET CODE="NOM_JUSTE.class" WIDTH="200" HEIGHT="300">
autoriser java sur votre navigateur
</APPLET>
note : widht donne la largeur en
pixels reservée pour l'affichage de l'Applet
height
donne la hauteur en pixels reservée pour l'affichage de l'Applet
si l'Applet ne se trouve pas dans le même dossier / répertoire que le document HTML, on doit fournir son adresse avec CODEBASE ="ici"
le texte entre les deux tags sera affiché si l'applet ne le peut pas..
Les classes auront la structure suivante:
public class D_autre {
fonctions et instructions
}
opérateurs arithmétiques |
opérateurs logiques |
opérateurs d'incrémentation |
||||
---|---|---|---|---|---|---|
a=a+b |
+= |
a+=b |
| |
non |
a++ |
postincrémentation R = a* ++E |
a=a-b |
-= |
a-=b |
< |
plus petit que... |
||
a=a*b |
*= |
a*=b |
> |
plus grand que |
++a |
préincrémentation R = a* E-- |
a=a/b |
/= |
a/=b |
>= |
plus grd ou égal |
||
reste de la division |
%= |
a%=b |
<= |
plus ptt ou égal |
a-- |
post décrément. |
affectation conditionnelle |
?= |
a=(c<d)?e:f a= e si c<d sinon a=f |
!= |
différent |
--a |
prédécrément. |
== |
identique |
|||||
&& |
ET |
|||||
|| |
OU |
instruction if |
instruction for |
instruction Switch | instruction while |
---|---|---|---|
if (condition==remplie) { instruction_1 ; instruction_2 ; } else { // sinon (facultatif) instruction_3 ; instruction_4 ; }
note : attention dans la condition il s'agit d'un opérateur logique donc == |
for (x=2;x<=7;x++ ) {
instruction_1 ; } for (var
in objet) { //for (;;) => boucle infinie continue // interdit l'exécution for (I=0;I<10;I++ ) { |
Switch (variable_entière) { case 1': // si variable==1 instruction_1 ; break; case
2:
// si variable==2 default:
// si pas trouvé } // suite du programme |
while (test == false
) { instruction_1 ; } // while (1) => boucle infine
ou do {
|
exemple | exemple | exemples (1 ou 2) |
l'instruction return permet de renvoyer une valeur depuis une fonction
....
function circonference (rayon) { // fonction appellée
rayon *= 6,28 ;
return rayon// rayon contient la valeur de la circonférence
}....// dans une autre fonction
X = 17,5;
circonference (X); // appel la fonction circonférence et passe la valeur de X comme rayon
Java est un langage orienté objet ( instructions à points) qui comprend une importante bibliothèque de "classes" (sous-programmes) qui permet d'avoir relativement peu d'instruction à connaître.
Chaque objet possède une ou plusieurs propriété (ou méthode). Pour créer un objet, il faut utiliser l'opérateur New.
par exemple: Une liste de personnes comprend autan d'objets "personne" qu'il y a d'employés:
function personne (nom, prenom,AVS,salaire) { this.nom=nom
this.prenom=nom
this.AVS=AVS
this.salaire=salaire}
Cette fonction affecte 4 propriétés à un type d'objet "personne"
secrétaire = new personne ("Anne","Pahud",153465,4230) | ceci crée un objet secrétaire du type personne et affecte automatiquement les valeurs des propriétés. |
secrétaire.nom.value// renvoie la valeur "anne". voir un exemple
définition d'une classe avec ou sans passage de paramètres (construction d'un objet "courant" avec surcharge du constructeur) |
commentaires : |
public class Courant { double var1; double var2; public Courant () { attribution des valeurs par défaut } public Courant(double t, double i) { var1 = t; var2 = i; } static public double CalculI() { return tension / impedance; } } |
nom de la classe + marque le début de la classe déclare une variable double : var1 déclare une variable double : var2 défini une fonction sans paramètre : Courant() instruction d'affectation de valeurs par défaut ferme la fonction Courant() défini une fonction avec paramètre -double: Courant(t,i) initiale la valeur de la variable var1 à la valeur de t ferme la fonction Courant(t,i) défini la fonction de calcul : CalculI() calcul la valeur à retourner ferme la fonction CalculI() ferme la classe Courant |
Le programme appellant serait :
import java.applet.Applet; import java.awt.*; import Courant; public class Pour_voir extends java.applet.Applet // il faut ce qu'il faut ..
|
voir un exemple |
pour modifier la couleur de fond: setBackground(Color.white) pour placer une image : Image i; // image en fond i = getImage(getCodeBase(),"cetteimage.gif"); g.drawImage(i,0,0,this); // l'image à la taille réelle |
|
Les variables seront déclarées différemment si elle sont employées dans une Applet ou un script. Le nom d'une variable doit toujours commencer par une lettre (toutefois il peut contenir des chiffres, des $ ou des _ dans la site de son nom,
ex. c_est_mon_nom_24 est juste mais pas c'est mon nom).
Voici quelques types de variables :
nombres | type | codé | plage | |
entiers * | byte | 8 bits | de -128 à 127 | |
short | 16 bits | de -32768 à 32767 | ||
entiers | int | 32 bits | de -231 à 231-1 | int nombre_hexa = 0x6AF2 |
entiers | long | 64 bits | de -263 à 263-1 | |
réels | float | simple précision (32 bits) | de -1,40239846 . 10-45 à 3,4......1038 | float f = 234,67f; |
entiers | double | double précision (64 bits) | de -4,9... . 10-324 à 1,7......10308 |
double var=135.678d; |
booléens | 1 bit | true = 0, false >0 | ||
caractère | char | 16 bits Unicode | un seul caractère | char var1='i'; |
chaîne de caractères | objet String | String var2="oui"; | ||
tableau | type nom_va [ ] type nom_va [ ] [ ] |
1 dimension 2 dimensions |
caract. ou nombre | int variable3 [ ] ; |
int ceci_contient_un_entier;
String Ceci_est_ une_chaine;
ceci_contient_un_entier = 123;
Ceci_est_ une_chaine =
Integer.toString(ceci_contient_un_entier,10);
int montableau [ ] ; //tableau d'une dimension contenant des valeurs
"entières"
(voir exemples)
String montableau [ ] [ ]; //tableau à 2 dimensions contenant des valeurs
"chaîne"
(voir exemples)
eval () // conversion numérique d'une chaîne - resultat = eval ("125.7")
parseInt() // conversion en un entier d'une chaîne en utilisant une base - resultat_2 = parseInt ("125",8)
parseFloat() // conversion en un réel d'une chaîne - resultat_3 = parseFloat ("125.7")
exemple de convertion d'une chaîne en un objet double :
objetDouble = Double.valueOf(variable_chaîne).doubleValue();
(exemple)
exemple de convertion d'une chaîne en un objet entier :
objetEntier = Interger.parseInt(variabl_chaîne,10);
(exemple) // 10 exprime la base
exemple de convertion d'un entier en une chaîne :
nouvelchaîne = Integer.toString(variable_int,10);
(exemple)//
10 exprime la base
exemple de convertion d'un double en une chaîne :
nouvelchaîne = Double.toString(variable_double);
(exemple)
ou (exemple)
Durée de vie : la durée de vie d'une variable est celle de la partie de programme dans laquelle elle est déclarée :
1) | si elle est déclarée dans une classe : elle contient la même valeur (si inchangée par le programme) durant toute l'utilisation de cette classe. |
2) | si elle est déclarée dans une fonction : elle contient la même valeur (si inchangée par une instruction) durant toute l'utilisation de cette fonction. |
3) | si elle est déclarée dans une boucle : elle contient la même valeur (si inchangée par une instruction) durant toute l'utilisation de cette boucle ( par exemple un compteur n'a pas besoin d'être défini dans la fonction). |
4) | si elle est déclarée dans une ligne d'instruction : elle contient la même valeur (si inchangée par l' instruction) durant toute l'utilisation de cette ligne ( dans ce cas, il s'agit surtout d'une erreur de programmation). |
Donc des variables différentes de nom identique peuvent coexister sans problème dans une même classe ou une même fonction.
Déclarations des variables: pour déclarer une variable, il faut indiquer son type avant son nom (il existe quelques exeptions, mais il reste plus clair de quand même les déclarer par leur type)
exemples:
type nom_variable = valeur
long nombre_long_en_octal = 0634; // nombre entier exprimé en octal
double Nombre64bits = 34.6788;
float nombre32bits =123.56f; // Si l'on ne reprécise pas qu'il est float il y aura une erreur car Java suppose que le nombre avec virgule est en double
for (int compteur = 0; compteur <10; compteur++) // compteur n'existe que dans cette boucle
char caract ; // définit une variable contenant un caractère sans affectation de valeur
char retour =' \r'; // définit une variable contenant un caractère avec affectation d'un code
char tabulation =' \u0009'; //définit un caractère Unicode (avec JDK 1.3)
int valeur1,valeur2;
string Tableauchaine [ ]; // tableau de chaînes (exemples des variables) tableau)
double tableau1et2 [ ] [ ]; // les [] peuvent être placés avant ou après le nom de la variable (exemples variables à 2 dimensions )voir les conversions de types
Dans les Applet les textes sont des dessins de lettres. Nous avons besoin de la méthode drawString():
g.drawString("texte"ou string chaine,int X,int Y);
exemple :
import java.awt.*;
public class VOIRTEXTE extends java.applet.Applet {
public void paint (Graphics g) {g.drawString("ouf, ça marche",10,20); // affiche le "texte" à 10 du bord G et à 20 du haut
}}
constructeur (méthode de la classe java.awt.Font) de l'objet Font:
public Font (String nom, Font.style, int taille)
note : style => .BOLD, .ITALIC, . PLAIN
|
constructeur (méthode de la classe java.awt.Color) de l'objet Color
public Color (int r, int g, int b) // (valeur de 1 à 256 pour le rouge, vert, bleu)
public Color (float r, float g, float b) // (valeur de 0.0 à 1.0 pour le rouge, vert, bleu)
public Color (int rgb) // le premier octet contient la valeur de la composante du bleu, le second le vert et le troisième le rouge
public Color (sting nom_couleur) // par exemple : black, blue, cyan, darkGray, gray, lightGray, green, magenta, orange, pink, red, white, yellow
exemples :
|
note : cette commande est aussi valable pour des lignes
Avec Java on peut passer des paramètres depuis la document HTML à l'Applet Java.
document HTML |
récupération sur l'Applet |
<APPLET CODE ="nom.class" WIDHT="100"
HEIGHT="100"> <PARAM NAME=nom1 VALUE="bonjour"> <PARAM NAME=nom2 VALUE="400"> navigateur incompatible </APPLET> voir un exemple simple ou complexe ( avec nombres) |
String param1; int param2; public void init() {
} |
note: il est possible de mettre les param dans le même tag que celui qui appelle l'Applet.
Il est possible et même indispensable de documenter les classes que vous créez. Pour cela il y a plusieurs manières différentes:
|
|
méthodes de la classe java.awt.Graphics : Public absttract void drawLine (int x1, int y1, int x2, int y2)
exemples d'instuctions dans une fonction :
|
méthode de la classe java.awt.Graphics
public absttract void drawPolyline (int xpoints[], int ypoints[], int nombre_de_point)
note : mettre d'abord les coordonnée (x,y) dans des tableaux
g.drawPolyline (tableau_x, tableau_y,10); // trace 10 traits qui ont chacun comme origine la fin du précédent.
méthodes de la classe java.awt.Graphics : Public absttract void drawRect (int x1, int y1, int largeur, int hauteur)
exemples d'instuctions dans une fonction :
|
méthodes de la classe java.awt.Graphics : Public absttract void fillRect (int x1, int y1, int largeur, int hauteur)
exemples d'instuctions dans une fonction :
|
méthodes de la classe java.awt.Graphics
Public absttract void drawRoundRect (int x1, int y1, int largeur, int hauteur, int diamelipshori, int diamelipseverti)
exemple d'instuction dans une fonction :
|
méthodes de la classe java.awt.Graphics
Public absttract void drawRoundRect (int x1, int y1, int largeur, int hauteur, int diamelipshori, int diamelipseverti)
exemple d'instuction dans une fonction :
|
méthodes de la classe java.awt.Graphics
Public absttract void 3DRect (int x1, int y1, int largeur, int hauteur, boolean relevé)
exemples d'instuctions dans une fonction :
|
méthodes de la classe java.awt.Graphics
Public absttract void fill3DRect (int x1, int y1, int largeur, int hauteur, boolean relevé)
exemples d'instuctions dans une fonction :
|
méthodes de la classe java.awt.Graphics
Public absttract void clearRect (int x1, int y1, int largeur, int hauteur)
exemples d'instuctions dans une fonction :
|
méthodes de la classe java.awt.Graphics
Public absttract void copyArea (int x1, int y1, int largeur, int hauteur, int nouveau_X, int nouveau_Y)
exemples d'instuctions dans une fonction :
|
méthode de la classe java.awt.Graphics
public absttract void drawPolygon (int xpoints[], int ypoints[], int nombre_de_point)
note : mettre d'abord les coordonnée (x,y) dans des tableaux
g.drawPolygon (tableau_x, tableau_y,100); // trace un trait qui relie les 100 points contenu dans les tableaux X et Y et retour au 1er point...
public void drawPolygon (Polygon objet_polygone)
méthode de la classe java.awt.Graphics
public absttract void fillPolygon (int xpoints[], int ypoints[], int nombre_de_point)
note : mettre d'abord les coordonnée (x,y) dans des tableaux
g.fillPolygon (tableau_x, tableau_y,10); // trace un trait qui relie les 10 points contenu dans les tableaux X et Y et retour au 1er point...
exemple d'instuction dans une fonction :
g.drawArc (val_int_x,val_int_y, int_largeur, int_hauteur, int_debut_angle, int_angle_en_plus);//angle en degré
exemple d'instuction dans une fonction :
g.setColor(Color.magenta);
g.fillArc (val_int_x,val_int_y, int_largeur, int_hauteur, int_debut_angle, int_angle_en_plus); //angle
en degré
exemple d'instuction dans une fonction :
g.drawOval (int_sup_GaucheX,int_sup_GaucheY, int_largeur, int_hauteur, ); //trace l'oval dans le rectangle ainsi défini
exemple d'instuction dans une fonction :
g.setColor(Color.cyan);
g.fillOval (int_sup_GaucheX,int_sup_GaucheY, int_largeur, int_hauteur, ); // trace l'oval dans le rectangle ainsi
défini
Pour faire opération, il faut faire un nouvel appel à la fonction paint() avec un appel repaint():
import java.awt.*; // contient les méthodes graphiqes import java.applet.*; public class affiche extends Applet {
} |
constructeur : public abstract void mousePressed (MouseEvent evt) Interface : MouseListener
import java.awt.*; import java.awt.event.*; /* ou import java.awt.event.MouseListener; import java.awt.event.MouseEvent; */ Public class testsouris extends java.applet.Applet implements MouseListener {
|
constructeur : public abstract void mouseReleased (MouseEvent evt) Interface : MouseListener
import java.awt.*; import java.awt.event.*; Public class testsouris extends java.applet.Applet implements MouseListener {
|
constructeur : public abstract void mouseEntered (MouseEvent evt) Interface : MouseListener
import java.awt.*; import java.awt.event.MouseListener; import java.awt.event.MouseEvent; Public class testsouris extends java.applet.Applet implements MouseListener {
|
note: il est conseillé de la déclarer pour implémeneter complétement l'interface MouseListener, même si cette fonction n'a aucune instruction. [public void mouseEntered (MouseEvent evt) {}]
constructeur : public abstract void mouseExited (MouseEvent evt) Interface : MouseListener
exemple : mport java.awt.*; Public class testsouris extends java.applet.Applet implements MouseListener {
|
note: il est conseillé de la déclarer pour implémenter complétement l'interface MouseListener, même si cette fonction n'a aucune instruction. [public void mouseEnxited (MouseEvent evt) {}]
constructeur : public abstract void mouseMoved (MouseEvent evt) Interface : MouseMotionListener
exemple : import java.awt.*; Public class testsouris extends java.applet.Applet implements MouseListener {
|
note: il est conseillé de la déclarer pour
implémenter complétement l'interface MouseMotionListener, même si cette fonction n'a
aucune instruction
[ public void mouseMoved (MouseEvent evt) {}]
la souris se déplace bouton enfoncé
constructeur : public abstract void mouseDragged (MouseEvent evt) Interface : MouseMotionListener
exemple :import java.awt.*; Public class testsouris extends java.applet.Applet implements MouseListener {
|
public Label ( )
public Label (String chaîne _à_afficher)
public Label ( String chaîne _à_afficher, int align)
note : align => Label.LEFT, Label.CENTER, Label.Right
Label.setAlignment () ->
(int) définit la valeur de l'alignement : 0=LEFT, 1= CENTER, 2=RIGHT
Label.getAlignment () ->
(int) renvoie la valeur de l'alignement : 0=LEFT, 1= CENTER, 2=RIGHT
exemple : variable = Texte1.getAlignment();
Label.setText () -> (String)
définit le texte de l'étiquette
Label.getText () -> (String)
renvoie le texte de l'étiquette
exemple : Chaîne$
= Texte1.getText(); / /renvoi le texte contenu dans l'étiquette 'Texte1'
Label texte1 = new Label ("ceci est un texte écrit
sur une ligne"); public void
init() { |
voir un exemple d'utilisation
avec Choice |
public TextField ()
public TextField (int nombre_de caractères)
public TextField ( String chaîne _à_afficher)
public TextField (String chaîne _à_afficher, int nombre_de caractères, )
TextField.echoCharIsSet();
-> (boolean) true si le texte est caché sinon false
exemple : variable_booleen = TextField.echoCharIsSet();
TextField.getColumns(); ->
(int) renvoie le nombre de caractère du champ
exemple : variable_int =TextField.getColumns();
TextField.setColumns(); ->
(int) impose le nombre de caractère du champ
TextField.getMinimumSize () ->
(objet Dimension) renvoie la taille minimale pour le texte du champ
TextField.getMinimumSize (int) -> (objet Dimension) renvoie la
taille minimale pour le le nombre de caractères indiqué du champ
TextField.getPreferredSize ()
-> (objet Dimension) renvoie la taille optimale pour le texte du champ
TextField.getPreferredSize (int)
TextField.getEchoChar () ->
(char) renvoie le caractère de masquage
TextField.setEchoChar (char caractère_de_masquage) ->
(char)défini le caractère de masquage
exemple : TextField.setEchoChar ('*');
TextField.paramString
() -> (String) renvoie le texte du champ
TextField..getText()
-> (String) renvoie le texte du champ
exemple : if (TextField.getText().equals("blut"));
TextField.setText () -> (String) modifie le texte du champ
TextField.addActionListener (ActionListener)
-> met en place la gestioin des événements liés à ce contrôle
exemple : TextField.addActionListener
(this)
TextField.removeItemListener (ItemListener)
-> suspend la gestioin des événements liés à ce contrôle
exemple :
|
voir exemples |
public TextArea (int nombre_de_ligne, int nombre_de_colonnes)
public TextArea ( String chaîne _à_afficher)
public TextArea (String chaîne _à_afficher, int nombre_de_ligne, int nombre_de_colonnes)
Zone1.getRows () -> (int)
renvoie le nombre de ligne de la zone
exemple : variable_entière = Zone1.getRows ();
Zone1.getColumns () -> (int)
renvoie le nombre de colonnes de la zone
exemple : variable_int = Zone1.getColumns();
Zone1.insert (String chaîne, int
position) -> insert la 'chaîne' dans la zone à 'position'
Zone1.getMinimumSize () ->
(objet Dimension) renvoie la taille optimale pour le texte de la zone
exemple : variable_String = Integger.toString(Zone1.getMinimumSize().height,10);
Zone1.getPreferredSize () ->
(objet Dimension) renvoie la taille optimale pour le texte du champ
Zone1.paramString () ->
(String) renvoie la valeur de la zone text
Zone1.getText () -> (String)
renvoie le texte du champ
Zone1.replaceRange (String chaîne, int
départ, int fin) -> (String) modifie le texte du champ par 'chaîne' de
'début' à 'fin'
exemple :
|
voir exemple |
public Checkbox ()
public Checkbox (String texte _à_afficher, Checkboxgroup nom_du_groupe, Boolean
etat)
public Checkbox (String texte _à_afficher,, Boolean etat, Checkboxgroup
nom_du_groupe)
public Checkbox ( String texte _à_afficher)
public Checkbox ( String texte _à_afficher, Boolean état)
note : état =>true = coché, false = décoché
variante.setLabel (String
étiquette) -> (String) défini l'étiquette de la case à cocher
variante.getLabel () ->
(String) renvoie l'étiquette de la case à cocher
exemple : variable_Chaîne = variante.getLabel ();
// retourne '1er texte à choix'
variante.getSelected Object ()
-> (String) impose le texte sélectionné
variante.setSelected Object ()
-> (String) donne le texte sélectionné
variante.setState (boolean état) ->
(boolean) défini l'état true (coché) ou false (décoché)
variante.getState () ->
(boolean) renvoie l'état true (coché) ou false (décoché)
exemple : variable_boolean = variante.getState();
variante.addItemListener (ItemListener)
-> met en place la gestioin des événements liés à ce contrôle
exemple : .variante.addItemListener
(this)
variante.removeItemListener (ItemListener)
-> suspend la gestioin des événements liés à ce contrôle
variante.processEvent (AWTEvent) ->
reroute un événement
variante.processItemEvent (ItemEvent) ->
reroute un événement
variante.setCheckboxGroup (CheckboxGroupe)
-> impose l'appartenance à un groupe
variante.getCheckboxGroup (CheckboxGroupe)
-> donne l'appartenance à un groupe
exemple : import
java.applet.Applet;
suite et fin |
voir exemples |
public CheckboxGroup ()
groupe1.getCurrent () ->
donne la case cochée
groupe1.setCurrent (Checkbox nom) ->
impose la case cochée
groupe1.setSelectedCheckbox (Checkbox
nom) -> (objet) sélectionne un objet du groupe
groupe1.getSelectedCheckbox () ->
(String) renvoie l'objet sélectionné
exemple : variable_Chaîne = groupe1.getSelectedCheckbox().getLabel() // retourne le texte sélectionné dans
groupe1
String.toString () -> renvoie une chaîne qui
représente les valeurs du groupe d'option.
import java.applet.Applet; import java.awt.*; import java.awt.event.*; public class reblut extends Applet implements ItemListener {
suite et fin |
voir exemples |
public Choice ()
public Choice (String)
Choice.addItem (String) ->
ajoute une entrée dans la liste
exemple : Liste1.addItem
("mon premier choix");
: Liste1.addItem ("mon second choix");
Choice.getItemCount() ->
(int) renvoie le nombre d'entrée de la liste
exemple : variable_Entière= Liste1.CountItems();
Choice.getItem (int numéro_de_ligne-1) -> (String) renvoie la
chaîne de la ligne (commance à 0)
Choice.getSelectedItem () ->
(String) renvoie la chaîne sélectionnée.
Choice.getSelectedIndex () ->
(int) renvoie le numéro de la ligne -1 sélectionnée.
Choice.select ( int numéro_de_ligne-1 ) -> Sélectionne la
ligne +1
Choice.select (String chaîne) -> Sélectionne la ligne .
Choice.remove ( int numéro_de_ligne-1 ) -> Supprime une ligne
Choice.removeAll ( ) ->
supprime tous le schoix
Choice.insert (String nouveau, int numéro_de_ligne-1 ) -> insert la ligne +1 .
Choice.addItemListener (ItemListener) ->
met en place la gestioin des événements liés à ce contrôle
exemple : .Choice.addItemListener
(this)
Choice.removeItemListener (ItemListener)
-> suspend la gestioin des événements liés à ce contrôle
Choice.eventEnabled (AWTEvent) ->
(boolean) vérifie l'activation d'un événement
Choice.processEvent (AWTEvent) ->
reroute un événement
Choice.processItemEvent (ItemEvent) ->
reroute un événement
exemple : import java.applet.Applet;
} |
public List ()
public List (int nombre_de_ligne_visible)
public List (boolean selection_multiple)
public List (int nombre_de_ligne_visible, boolean selection_multiple)
note : boolean selection_multiple => true = plusieurs sélections possible, false = une seule sélection
Liste1.addItem (String texte)
-> ajoute une entrée dans la liste
exemple : Liste1.addItem
("mon premier choix");
Liste1.addItem ("mon second choix");
Liste1.addItem (String , int)
-> ajoute une entrée dans la liste à une ligne donnée
Liste1.CountItems () -> (int)
renvoie le nombre d'entrée de la liste
exemple : variable_Entière =Liste1.CountItems();
Liste1.allowsMultipleSelections () ->
(boolean) renvoie true si la sélection multiple est possible
Liste1.clear () ->supprime
les entrées définies dans la zone de liste
Liste1.delItem (int position) ->
supprime l'entrée position numéro 'position'
Liste1.delItems (int de, int à) ->
supprime les entrées de position numéro 'de' à position numéro 'à'
exemple : Liste1.delItems(2,5);
Liste1.getItem (int position) ->
(String) renvoie l'option de la ligne position
Liste1.getItem ( ) ->
(String []) renvoi un tableau String des options
Liste1.getItemCount () ->
(int) renvoie le nombre d'option
Liste1.deselect (int position)
->désélectionne l'entrée à la position numéro 'position'
Liste1.getMinimumSize () ->
(dimension) propose une taille minimum
Liste1.getMinimsSize (int) -> (dimension) donne
la taille minimum
Liste1.getPreferredSize () ->
(dimension) propose une taille
Liste1.getRows () -> (int)
renvoie le nombre d'entrées de la liste
Liste1.getSelectedIndexes ( )
-> (int []) renvoie les valeur des positions des options sélectionnées
Liste1.getSelectedIndex ( )
-> (int) renvoie la valeur de la position de l'entrée sélectionnée
Liste1.getSelectedItem ( ) ->
(String) renvoie la chaîne de l'entrée sélectionnée
Liste1.getSelectedItems ( )
-> (String []) renvoie dans un tableau les chaînes des entrées sélectionnée
Liste1.setMultipleSelections (boolean
multple ) -> autorise la sélection multiple si 'multiple' vaut true
Liste1.setMultipleMode (boolean multple
) -> autorise la sélection multiple si 'multiple' vaut true
Liste1.isMultipleMode () ->
(boolean) renvoie true si la selection multiple est possible
Liste1.isIndexSelected (int )
-> (boolean) renvoie true si l'index est sélectionné
Liste1.isSelected (int position )
-> (boolean) renvoie true si l'entrée de la 'position' est sélectionnée
Liste1.Select (int position )
-> sélectionne l'entrée 'position'
Liste1.makeVisible (int) ->
rend visible cette option
Liste1.remove (int) ->
supprime l'option désignée
Liste1.remove (String) ->
supprime l'option désignée
Liste1.removeAll () ->
supprime toutes les options de la liste
Liste1.replaceItem (String) ->
remplace une otpion
Liste1.addActionListener (
ActionListener ) -> prise en charge des événements
Liste1.removeActionListener (ActionListener)
-> annule la prise en charge des événements
Liste1.addItemListener ( ItemListener )
-> prise en charge des événements
Liste1.removeItemListener (ItemListener)
-> annule la prise en charge des événements
Liste1.eventEnabled (AWTEvent) ->
contrôle l'activation d'un événements
Liste1.processActionEvent (ActionEvent)
-> reroute l'ActionEvent
Liste1.processEvent (Event) ->
reroute l'Event
Liste1.processItemEvent (itemEvent) ->
reroute l'ActionEvent
import java.applet.Applet; import java.awt.*; import java.awt.event.*; public class reblut extends Applet implements ActionListener {
} |
voir exemples |
constructeurs ( classe java.awt.Button) de l'objet Button (Bouton)
public Button()
public Button (String Nom_de_l'étiquette_dans_le_bouton)
méthode de la classe Button :
Bouton.setLabel (String nom_de_l'étiquette) -> (String)
modifie la chaîne dans le bouton
Bouton.getLabel () ->
(String) renvoie la chaîne du bouton
exemple : variable_Chaîne = groupe1.getCurrent().getLabel() // retourne le texte sélectionné dans
groupe1
Bouton.toString () -> renvoie
une chaîne qui représente les valeurs du groupe d'option.
Bouton.addActionListener (ActionListener)
-> active la gestion des évenements
Bouton.removeActionListener (ActionListener)
-> supprime la gestion des évenements
Bouton.eventEnabled (AWTEvent)
-> (boolean) indique si un événement est permis
Bouton.getActionCommand () ->
(String) renvoie une chaîne qui représente le nom de la commande.
Bouton.setActionCommand (String)
-> (String) définit une chaîne qui représente le nom de la commande
Bouton.processActionEvent (ActionEvent)
-> reroute un évenement
Bouton.processEvent (AWTEvent)
-> reroute un évenement
exemple :
import java.awt.*; import java.awt.event.*; public class Bouton extends Applet implements ActionListener {
} |
voir exemples |
Pour utiliser Java non pas dans le navigateur, mais dans une fenêtre qui resemble aux habituelles que l'on trouve dans les mondes Windows, Solaris ou même dans le paradis Macintosh, il faut utiliser une classe dérivée de la classe Frame (java.awt.frame).
donc vous aurez les codes suivant à entrer :
import java.applet.Applet;
import java.awt.*;
import java.awt.event.*;
public class Fen11 extends Frame
implement WindowListener {
// constructeur
// voir gestion de la fenêtre
public static void main (String args[ ]) { // procédure principaleFen11 Fenster=new Fen11(); // fenêtre sans titre - Untitled
Fenster.show(); // affiche l'objet fenêtre
Fenster.addWindowListener(Fenster);
...}
}
public class Fen11 extends Frame implements WindowListener { // constructeur
public Fen11 () {
setSize(240,300);
}
public void windowClosing (WindowEvent event) { // gestion de l'évenement case de fermeturedispose(); // ferme la fenêtre
}
public void windowClosed (WindowEvent event) {
}
public void windowDeiconifield (WindowEvent event) {
}
public void windowActivated (WindowEvent event) {
}
public void windowDeactivated (WindowEvent event) {
}
public void windowOpoened (WindowEvent event) {
}
}
méthode de la classe Frame :
Frame.dispose () -> libère les resources
utilisée par l'oblet frame
Frame.getIconImage () -> renvoie une image
(l'icône de l'application)
Frame.setIconImage (Image image_icone) -> definit
l'icône de l'application
Frame.getTitle () -> renvoie le titre (dans la
barre de titre)
Frame.setTitle () -> définit le titre (dans la
barre de titre)
Fenster.setTitle ("super blabla");
Frame.isResizable () -> renvoie true si la fenêtre
peut être redimensionnée
Frame.setResizable (boolean redim) ->
redimensionnable si redim=true
Fenster.setResizable (false);
Frame.Component.setCursor (Image image_curseur) ->
definit l'apparence du curseur
Frame.setIconImage (Image image_icone) -> definit
l'icône de l'application
Ce sera plus simple avec un exemple.
import java.awt.*;
import java.awt.event.*;
import java.awt.event.MouseListener;
import java.awt.event.MouseEvent;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
public class Menu_Frame extends java.applet.Applet {
public void init () {
Frame fenster = new Menu_fenster ();
fenster.show();
}
}
class Menu_fenster extends Frame implements ActionListener, MouseListener, MouseMotionListener {
int couleur;
checkboxMenuItem C1;// 1ère comande du menu couleur
checkboxMenuItem C2;
public Menu_fenster () {
set Title("titre de la fenêtre");
MenuBar barre1 = new Menubar();
Menu menFich = new Menu ("&Fichier"); // défini un titre de menu :Fichier
Menu menCou = new Menu("&Couleur"); // défini un titre de menu : Couleur
barre1.add (menFich); // met le titre dans la barre
barre1.add (menCou); //met le titre dans la barre
MenuItem F1 = new MenuItem ("&Quitter") // définit une commande
C1 = new checkboxMenuItem ("&Noir") // définit une commande
C2 = new checkboxMenuItem ("&Rouge") // définit une commande
menFich.add (F1); // met la commande dans le menu
F1.addActionListener (this);
F1.setActionCommand ("&Quitter);
menFich.add (C1); // met la commande dans le menu
C1.addActionListener (this);
C1.setActionCommand ("&Noir);
menuCou.add (C2); // met la commande dans le menu
C2.addActionListener (this);
C2.setActionCommand ("&Rouge);
setMenuBar (barre1);
addMouseListener (this);
addMouseMotionListener(this);
resize(250,300);
C1.setState (true); // couleur noir par défaut}
}
Ce sera plus simple avec un exemple en rapport avec l'exemple précédent:
import java.awt.*;
import java.awt.event.*;
import java.awt.event.MouseListener
import java.awt.event.MouseEvent;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
public class Fenetre extends Frame
implements WindowListener,ActionListener,MouseListener,MouseMotionListener
{
// début comme ci-dessus ....
public void actionPerformed (ActionEvent evt) { // événement liés au menu
if (evt.getActionCommand().equals("&Quitter"))
dispose ();
if (evt.getActionCommand().equals("&Noir")) {
couleur = 1;
C1.setState(true);
C2.setState(false);
}if (evt.getActionCommand().equals("&Rouge")) {
couleur = 2;
C2.setState(true);
C1.setState(false);
}}
}