aboutsummaryrefslogtreecommitdiff
path: root/robottino/all_versions/v2.2/src/RobottinoUtils
diff options
context:
space:
mode:
authorSebastiano Tronto <sebastiano@tronto.net>2026-03-26 19:27:18 +0100
committerSebastiano Tronto <sebastiano@tronto.net>2026-03-26 19:27:18 +0100
commit7167b4341ef290d56fb96e2af10883a4b925d83b (patch)
tree1eb1b9e5ab82ddd89540e68d6b22ae69514575c6 /robottino/all_versions/v2.2/src/RobottinoUtils
downloadancient-projects-7167b4341ef290d56fb96e2af10883a4b925d83b.tar.gz
ancient-projects-7167b4341ef290d56fb96e2af10883a4b925d83b.zip
I found my old code!HEADmaster
Diffstat (limited to 'robottino/all_versions/v2.2/src/RobottinoUtils')
-rwxr-xr-xrobottino/all_versions/v2.2/src/RobottinoUtils/Grafica.java60
-rwxr-xr-xrobottino/all_versions/v2.2/src/RobottinoUtils/Listener.java62
-rwxr-xr-xrobottino/all_versions/v2.2/src/RobottinoUtils/PartiDelRobot.java22
3 files changed, 144 insertions, 0 deletions
diff --git a/robottino/all_versions/v2.2/src/RobottinoUtils/Grafica.java b/robottino/all_versions/v2.2/src/RobottinoUtils/Grafica.java
new file mode 100755
index 0000000..25574a3
--- /dev/null
+++ b/robottino/all_versions/v2.2/src/RobottinoUtils/Grafica.java
@@ -0,0 +1,60 @@
1// Dichiaro che questa classa farà parte del package RobottinoUtils, che verrà poi importato dalla classe Robottino.
2package RobottinoUtils;
3
4// Importo i package standard relativi al funzionamento delle finestre e della grafica in generale.
5import java.awt.*;
6
7// E i package RobottinoAzioni e RobottinoUtils da me definiti.
8import RobottinoAzioni.*;
9import RobottinoUtils.Listener;
10
11// La classe è una sottoclasse di Frame per poter sfruttare gli effetti grafici
12// ma implementa anche l'interfaccia WindowListener, necessaria per gestire gli eventi collegati alle finestre
13// (riduzione a icona, chiusura...); per questo devo successivamente ridefinire tutti i
14// metodi dell'interfaccia.
15public class Grafica extends Frame {
16
17 // Creo un'istanza della classe Listener che userò come listener per gli eventi.
18 public static Listener listener;
19
20 // Il costruttore senza argomenti.
21 public Grafica () {
22
23 // Il metodo "setBounds" posiziona e dimensiona la finestra.
24 setBounds (this.orizzontale, this.verticale, this.larghezza, this.altezza);
25
26 // "setTitle" per il titolo della finestra.
27 setTitle ("Robottino v2.2");
28
29 // "setVisible" per poterla visualizzare.
30 setVisible (true);
31
32 // E addWindowListener per l'ascoltatore (listener).
33 listener = new Listener();
34 addWindowListener (listener);
35 }
36
37 // Questo costruttore permette di modificare la posizione o la dimensione della finestra
38 // rispetto al predefinito.
39 public Grafica (int orizzontale, int verticale, int larghezza, int altezza) {
40 this.orizzontale =orizzontale;
41 this.verticale = verticale;
42 this.larghezza = larghezza;
43 this.altezza = altezza;
44 setBounds (this.orizzontale, this.verticale, this.larghezza, this.altezza);
45 setTitle ("Robottino v2.2");
46 setVisible (true);
47 listener = new Listener();
48 addWindowListener (listener);
49 }
50
51 // Le variabili pubbliche di classe per il metodo "setBounds".
52 public int orizzontale = 0;
53 public int verticale = 0;
54 public int larghezza = 500;
55 public int altezza = 500;
56}
57
58
59
60
diff --git a/robottino/all_versions/v2.2/src/RobottinoUtils/Listener.java b/robottino/all_versions/v2.2/src/RobottinoUtils/Listener.java
new file mode 100755
index 0000000..7ff51d6
--- /dev/null
+++ b/robottino/all_versions/v2.2/src/RobottinoUtils/Listener.java
@@ -0,0 +1,62 @@
1// Questa classe è il listener per gli eventi relativi alle finestre.
2// Dichiaro che farà parte del package RobottinoUtils
3package RobottinoUtils;
4
5// Importo i package necessari.
6import java.awt.event.*;
7import RobottinoMain.*;
8
9public class Listener implements WindowListener {
10
11 // Ridefinisco i metodi dell'interfaccia WindowListener:
12 // Metodo invocato quando la finestra è stata chiusa:
13 public void windowClosed (WindowEvent evt) {
14
15 // Invoco il metodo sleep(int millisecondi) per mettere il programma in uno stato di attesa
16 // di durata pari ai millisecondi indicati come argomento.
17 System.out.println("La finestra è stata chiusa, il programma terminarà fra 3 secondi");
18 try {
19 Robottino.threadMain.sleep(1000);
20 } catch (Exception e) { e.printStackTrace(); }
21 System.out.println("2");
22 try {
23 Robottino.threadMain.sleep(1000);
24 } catch (Exception e) { e.printStackTrace(); }
25 System.out.println("1");
26 try {
27 Robottino.threadMain.sleep(1000);
28 } catch (Exception e) { e.printStackTrace(); }
29 System.out.println("Programma terminato");
30 System.exit(0);
31 }
32
33 // Metodo invocato quando la finestra è in fase di chiusura:
34 public void windowClosing (WindowEvent evt) {
35 System.out.println ("Chiusura finestra in corso");
36 evt.getWindow().dispose();
37 }
38
39 // Metodo invocato quando una finestra viene ridotta a icona:
40 public void windowIconified (WindowEvent evt) {
41 System.out.println("La finestra è stata ridotta a icona");
42 }
43
44 // Metodo invocato quando una finestra ridotta a icona viene ingrandita:
45 public void windowDeiconified (WindowEvent evt) {
46 System.out.println("La finestra ridotta a icona è stata ingrandita");
47 }
48
49 // Metodo invocato quando una finestra viene aperta:
50 public void windowOpened (WindowEvent evt) {}
51
52 // Metodo invocato quando una finestra diventa attiva:
53 public void windowActivated (WindowEvent evt) {}
54
55 // Metodo invocato quando una finestra viene disattivata:
56 public void windowDeactivated (WindowEvent evt) {}
57}
58
59
60
61
62
diff --git a/robottino/all_versions/v2.2/src/RobottinoUtils/PartiDelRobot.java b/robottino/all_versions/v2.2/src/RobottinoUtils/PartiDelRobot.java
new file mode 100755
index 0000000..d6cf869
--- /dev/null
+++ b/robottino/all_versions/v2.2/src/RobottinoUtils/PartiDelRobot.java
@@ -0,0 +1,22 @@
1// Dichiaro che questa classa farà parte del package RobottinoUtils, che verrà poi importato dalla classe Robottino.
2package RobottinoUtils;
3
4// Dichiaro la classe.
5public class PartiDelRobot {
6
7 // Creo un costruttore senza argomenti.
8 // Se non lo facessi sarei obbligato a passare gli argomenti
9 // del secondo costruttore ogni volta che voglio istanziare la classe.
10 public PartiDelRobot() {}
11
12 // Il secondo costruttore riceve come argomenti un booleano che passerà il valore a "statoParte"
13 // e una stringa che passa il valore a "stringaParte".
14 public PartiDelRobot(boolean b, String s) {
15 this.stringaParte = s;
16 this.statoParte = b;
17 }
18
19 // Infine le due variabili pubbliche della classe.
20 public String stringaParte;
21 public boolean statoParte;
22}

Generated with cgit - Back to sebastiano.tronto.net