Hey, ich hab ein Problem und zwar möchte ich die Listener methode die einzelnen methoden wie eingabe() zuordnen, dass wenn man eingabe drückt die Methode ausgeführt wird meine Idee war es halt einfach die Methode in einer dieser Unterklassen zu packen damit der Listener sie dann halt ausführt... Poblem : Die Unterklasse kennt die Methode zb Eingabe nicht... was kann ich tun Mein Programm :
IHR MÜSST JETZT NICHT ALLES DURCHLESEN DER WICHTIGE TEIL SIND DIE UNTERKLASSEN (ZEILE 57) UND DIE METHODEN EINGABE(ZEILE 112) UND SUCHEN(ZEILE 144) UND AUSGABE(ZEILE 137), DIE ICH I DIE UNTERKLASSEN EINFÜGEN WILL DAMIT SIE PER KNOPFDRÜCK AUSFÜHRBAR WERDEN.
Alles anzeigen
Vielen Dank, wers vis jetzt Durchgelesen hat ...
euer ltheonel
IHR MÜSST JETZT NICHT ALLES DURCHLESEN DER WICHTIGE TEIL SIND DIE UNTERKLASSEN (ZEILE 57) UND DIE METHODEN EINGABE(ZEILE 112) UND SUCHEN(ZEILE 144) UND AUSGABE(ZEILE 137), DIE ICH I DIE UNTERKLASSEN EINFÜGEN WILL DAMIT SIE PER KNOPFDRÜCK AUSFÜHRBAR WERDEN.
Quellcode
- import java.util.*;
- import java.awt.*;
- import java.awt.event.*;
- class Datensatz {
- private String name;
- private int id;
- private int note1, note2, note3;
- private static int nextUniqueID = 1;
- Datensatz(String theName) {
- name = theName;
- id = nextUniqueID;
- nextUniqueID++;
- }
- Datensatz() {
- id = nextUniqueID;
- nextUniqueID++;
- }
- public void setName(String lname) {
- name = lname;
- }
- public boolean setNote1(int n) {
- if (n > 0 && n <= 6) {
- note1 = n;
- return true;
- }
- else return false;
- }
- public boolean setNote2(int n) {
- if (n > 0 && n <= 6) {
- note2 = n;
- return true;
- }
- else return false;
- }
- public boolean setNote3(int n) {
- if (n > 0 && n <= 6) {
- note3 = n;
- return true;
- }
- else return false;
- }
- public String getName() {
- return name;
- }
- public int getID() {
- return id;
- }
- public String toString() {
- String s = new String("name: " + name + "\nid: " +id);
- return s;
- }
- }
- public class Start extends Frame {
- static Random rnum = new Random();
- private Button b1,b2,b3,b4;
- ArrayList sdata = new ArrayList();
- class Bal1 implements ActionListener {
- public void actionPerformed(ActionEvent e) {
- Start k = new Start();
- Out.println("Eingaberoutine"+k.eingabe() );
- }
- }
- class Bal2 implements ActionListener {
- public void actionPerformed(ActionEvent e) {
- ausgabe(sdata);
- }
- }
- class Bal3 implements ActionListener {
- public void actionPerformed(ActionEvent e) {
- Out.println("Suchroutine");
- }
- }
- class Bal4 implements ActionListener {
- public void actionPerformed(ActionEvent e) {
- System.exit(0);
- }
- }
- Start() {
- super ("Schulerdatenverwaltung");
- this.addWindowListener(new WindowAdapter() {
- public void windowClosing(WindowEvent e) {
- System.exit(0);
- }
- });
- TextField tf1;
- b1 = new Button("Eingabe");
- b1.addActionListener(new Bal1());
- b2 = new Button("Ausgabe");
- b2.addActionListener(new Bal2());
- b3 = new Button("Suchen");
- b3.addActionListener(new Bal3());
- b4 = new Button("Ende");
- b4.addActionListener(new Bal4());
- tf1 = new TextField("Sie Können nun etwas ''Eingeben'' es anschließen ''Ausgeben'' oder ''Suchen'', mit ''Ende wird das Programm beendet.", 30);
- this.setLayout(new BorderLayout());
- add(b1,BorderLayout.CENTER);
- add(b2,BorderLayout.SOUTH);
- add(b3,BorderLayout.EAST);
- add(b4,BorderLayout.WEST);
- add(tf1,BorderLayout.NORTH);
- }
- static void eingabe (ArrayList lsdata) {
- int n;
- boolean flag;
- String s;
- Datensatz ds = new Datensatz();;
- Out.println("Name: ");
- s = In.readWord();
- ds.setName(s);
- Out.println("Note1: ");
- n = In.readInt();
- while (!(flag = ds.setNote1(n))){
- if (!flag) Out.println("Bitte geben Sie eine Note zwischen 1 und 6 ein!");
- n = In.readInt();
- }
- Out.println("Note2: ");
- n = In.readInt();
- ds.setNote2(n);
- Out.println("Note3: ");
- n = In.readInt();
- ds.setNote3(n);
- lsdata.add(ds);
- }
- private static void ausgabe(ArrayList localdata) {
- for (int i = 0; i< localdata.size(); i++)
- System.out.println(localdata.get(i));
- System.out.println("________________________");
- }
- private static int suchen(ArrayList localdata) {
- Datensatz data;
- String name, s;
- int k;
- Out.print("Welchen Name suchen Sie? Eingabe: ");
- s = In.readWord();
- for (int i = 0; i< localdata.size(); i++) {
- data = (Datensatz) localdata.get(i);
- name = data.getName();
- k = name.compareTo(s);
- if (k == 0) return i;
- }
- return -1;
- }
- public static void main(String[] args) {
- Start st;
- st = new Start();
- st.setSize(700,600);
- st.setVisible(true);
- }
- }
Vielen Dank, wers vis jetzt Durchgelesen hat ...
euer ltheonel
Dieser Beitrag wurde bereits 6 mal editiert, zuletzt von ltheonel ()