//Import Befehle für die GUI
import java.awt.Component.*;
import java.awt.event.*;
import java.awt.BorderLayout;
import javax.swing.*;
import javax.swing.JMenu;
import javax.swing.JMenuItem;
//Import Befehle zur Steuerung des Robots
import de.jaetzold.art.RobotInterfaceFactory;
import de.jaetzold.art.RobotInterface;
import de.jaetzold.art.ActuatorPort;
import de.jaetzold.art.Motor;
import de.jaetzold.art.BooleanSensor;
import de.jaetzold.art.SensorPort;
import de.jaetzold.art.SensorListener;
import de.jaetzold.art.SensorEvent;
import de.jaetzold.art.CountSensor;
import de.jaetzold.art.examples.FTRotationCountStateDecider;
/* *************************************** Erstellen des Frames ************************************** */
public class JDemo
{
public static void main( String args[] )
{
JFrame frame = new JFrame();
WindowListener wl = new WindowAdapter() {
public void windowClosing( WindowEvent e)
{
System.exit(0);
}
};
frame.addWindowListener(wl);
frame.getContentPane().add(new PanelDemo() );
frame.pack();
frame.setSize(500,200);
frame.setLocation(0,0);
frame.setTitle("Roboter Steuerung ");
frame.show();
}
}
//Initialiesiert (übernimmt) die Werte für die Grad angaben
/* ******************************* Ereignisbehandlungs Methoden ********************** */
/* ******************************* drehe Rechts ************************************** */
class turnRight implements ActionListener {
public void actionPerformed(ActionEvent e) {
drechts test2 = new drechts();
}
}
class drechts {
public static void main(String[] argv) throws InterruptedException{
getGradzahl t =new getGradzahl();
IndustryRobot Robby = new IndustryRobot();
Robby.dreheRechts(t.xR);
}
}
/* ******************************* drehe Links ************************************** */
class turnLeft implements ActionListener {
public void actionPerformed(ActionEvent e) {
dlinks test3 = new dlinks();
}
}
class dlinks {
public static void main(String[] argv) throws InterruptedException{
getGradzahl tt =new getGradzahl();
IndustryRobot Robby1 = new IndustryRobot();
Robby1.dreheLinks(tt.xL);
}
}
/* *************************************** "füllen" des Frames ************************** */
class PanelDemo extends JPanel
{ public PanelDemo()
{ // Konstruktor
//BorderLayout - Manager
setLayout(new BorderLayout(5,5));
//Container
//JButton erstellen
JButton bdrechts = new JButton("DreheRechts");
JButton bdlinks = new JButton("DreheLinks");
JButton brobbo = new JButton("MoveRobotToStartPos");
// Button beim Listener Anmelden
bdrechts.addActionListener(new turnRight());
bdlinks.addActionListener(new turnLeft());
brobbo.addActionListener(new RobotMoveToStart());
//JButton hinzufügen
add(bdrechts, BorderLayout.EAST);
add(brobbo, BorderLayout.WEST);
add(bdlinks, BorderLayout.SOUTH);
//Labels erstellen
JLabel labeldr = new JLabel("Gradzahl dreheRechts (1 - 180°)");
JLabel labeldl = new JLabel("Gradzahl dreheLinks (1 - 180°)");
//Labels hinzufügen
add(labeldr, BorderLayout.CENTER);
add(labeldl, BorderLayout.CENTER);
//JTextFields erstellen
JTextField gdr = new JTextField("Zahl eingeben");
JTextField gdl = new JTextField("Zahl eingeben");
//JTextFields hinzufügen
add(gdr, BorderLayout.CENTER);
add(gdl, BorderLayout.CENTER);
/* ************************************* Menü *************************************** */
//JMenuBar erstellen
JMenuBar menuLeiste = new JMenuBar();
//JMenus erstellen
JMenu menuDatei = new JMenu("Datei");
JMenu menuExtras = new JMenu("Extras");
JMenu menuHilfe = new JMenu("Hilfe");
//Menü Datei
JMenuItem itemOeffnen = new JMenuItem("Datei öffnen", new ImageIcon("open.gif"));
JMenuItem itemSpeichern = new JMenuItem("Datei speichern", new ImageIcon("save.gif"));
JMenuItem itemBeenden = new JMenuItem("Programm beenden");
//MenuItems zum JMenu (menuDatei) hinzufügen
menuDatei.add(itemOeffnen);
menuDatei.add(itemSpeichern);
menuDatei.addSeparator();
menuDatei.add(itemBeenden);
// itemBeenden beim Listener anmelden
itemBeenden.addActionListener(new closeProg());
//Menü Extras
JMenuItem itemEinstellungen = new JMenuItem("Einstellungen");
//MenuItems zum JMenu (menuExtras) hinzufügen
menuExtras.add(itemEinstellungen);
menuExtras.addSeparator();
//Untermenü Hilfe
JMenuItem itemProgInfo = new JMenuItem("Programm Informationen");
JMenuItem itemHilfe = new JMenuItem("Hilfe");
// MenuItems zum JMenu (menuHilfe) hinzufügen
menuHilfe.add(itemProgInfo);
menuHilfe.add(itemHilfe);
// JMenu (menuHilfe) zum JMenu menuExtras hinzufügen
menuExtras.add(menuHilfe);
//JMenus zur JMenuBar (menuLeiste) hinzufügen
menuLeiste.add(menuDatei);
menuLeiste.add(menuExtras);
//JMenuBar (menuLeiste) zum frame hinzufügen
add(menuLeiste, BorderLayout.NORTH);
//setJMenuBar(menuLeiste); // Befehl funktioniert nicht, deswegen add(menuLeiste);
}
/* public String getTextFromGdr() {
return gdr.getText();
}
public String getTextFromGdl() {
return gdl.getText();
} */
}