Hallo,
wie kann ich in den Buttons der Symbolleiste und den Buttons von verschiede Panels die gleiche Funktionalität einprogramieren. Ich hab das mit dem gleichen Coding versuch klapt aber nicht. Beim Panel geht es aber bei der Symbolleiste kriege ich immer Exceptions.
hier mein coding :
coding vom Panel
wie kann ich in den Buttons der Symbolleiste und den Buttons von verschiede Panels die gleiche Funktionalität einprogramieren. Ich hab das mit dem gleichen Coding versuch klapt aber nicht. Beim Panel geht es aber bei der Symbolleiste kriege ich immer Exceptions.
hier mein coding :
Java:
import java.awt.BorderLayout;
import java.awt.Dimension;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.io.InputStream;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JToolBar;
public class Symbolleiste extends JToolBar {
JToolBar toolbar;
JButton button1,button2,button3,button4,button5,button6;
Artikell art;
Kunde kunde;
Symbolleiste (){
compute();
}
void compute(){
ImageIcon image1 = new ImageIcon("Open.png");
ImageIcon image2 = new ImageIcon("Close.png");
ImageIcon image3 = new ImageIcon("Save.png");
ImageIcon image4 = new ImageIcon("Break.png");
ImageIcon image5 = new ImageIcon("Break.png");
JToolBar toolbar = new JToolBar();
button1 = new JButton();
button2 = new JButton();
button3 = new JButton();
button4 = new JButton();
button5 = new JButton();
button6 = new JButton();
button1.setToolTipText("Öffnen");
button1.setIcon(image1);
button2.setToolTipText("Beenden");
button2.setIcon(image2);
button3.setToolTipText("Speichern");
button3.setIcon(image3);
button4.setToolTipText("Abbrechen");
button4.setIcon(image4);
// button5.setToolTipText();
button5.setIcon(image5);
add(toolbar);
toolbar.add( button1);
toolbar.addSeparator();
toolbar.add( button2);
toolbar.addSeparator();
toolbar.add( button3);
toolbar.addSeparator();
toolbar.add( button4);
toolbar.addSeparator();
toolbar.add( button5);
toolbar.addSeparator();
toolbar.add( button6);
//toolbar.add( button1);
button2.addActionListener(new ActionListener (){
public void actionPerformed(ActionEvent arg0) {
System.exit(1);
}
});
button3.addActionListener(new ActionListener(){
@Override
public void actionPerformed(ActionEvent event) {
Artikel [] ref = art.objekt(art.groesse());
Kundenauftrag kdnauftrag = new Kundenauftrag(kunde, ref,2);
kdnauftrag.speichern();
//artikel [n]= new Artikel(artnr.getText(),bezeich.getText());
}
});
button4.addActionListener(new ActionListener(){
@Override
public void actionPerformed(ActionEvent event) {
kunde = new Kunde ();
try {
kunde.name.getActionListeners();
FileWriter ref = new FileWriter("hallo.txt");
ref.write(kunde.name.getText());
ref.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
});
coding vom Panel
Java:
import java.awt.BorderLayout;
import java.awt.FlowLayout;
import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.IOException;
import java.util.Calendar;
import java.util.GregorianCalendar;
import javax.swing.JButton;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.JTextField;
import javax.swing.table.AbstractTableModel;
import javax.swing.table.TableModel;
public class Leinwand extends JPanel {
JButton speichern,oeffnen;
JLabel jgesamtnetto,jversand,jsteuer,jbrutto;
JLabel gesamtnetto,versand,steuer,brutto;
Artikell art;
Artikel artik;
Kunde kunde;
int n ;
JPanel panel1, panel2, panel3;
Leinwand (){
setLayout( null );
//Panels werden erzeugt
kunde = new Kunde ();
art = new Artikell();
// panel2= new JPanel();
panel3 = new JPanel();
//Buttons
speichern = new JButton("Speichern");
oeffnen = new JButton ("Öffnen");
//Bestimmung der Positionen auf dem verschiedenen Panels
kunde.setBounds(5,10,1270,300);
// panel2.setBounds(2,350,1270,300);
panel3.setBounds(5,680, 1270, 200);
art.setBounds(2,350,1270,300);
// Pos. Buttons
speichern.setBounds(50, 850, 100, 30);
oeffnen.setBounds(150, 850, 100, 30);
// Pos. Label
// Pos Textfelder
//Einfügen auf den Panels
// panel2.add(ref);
add(kunde);
add(art);
add(panel3);
add(speichern);
add(oeffnen);
compute();
}
public void compute(){
speichern.addActionListener(new ActionListener(){
@Override
public void actionPerformed(ActionEvent arg0) {
Artikel [] ref = art.objekt(art.groesse());
Kundenauftrag kdnauftrag = new Kundenauftrag(kunde, ref,2);
kdnauftrag.speichern();
//artikel [n]= new Artikel(artnr.getText(),bezeich.getText());
}
});
oeffnen.addActionListener(new ActionListener(){
@Override
public void actionPerformed(ActionEvent arg0) {
try {
Kundenauftrag.lesen();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
});
Java:
import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
public class Kundenauftrag {
int auftragnr;
Kunde kunde;
Artikel [] artikel ;
Kundenauftrag (Kunde kunde,Artikel artikel [],int auftragnr){
this.auftragnr= auftragnr;
this.kunde=kunde;
this.artikel=artikel;
}
public void speichern (){
int i=artikel.length;
try {
PrintWriter write = new PrintWriter(new FileWriter("test2.txt"));
for(i =0;i<artikel.length;i++){
write.print(artikel [i].artikelnr+i);
write.print(artikel [i].bezeichnung+i);
write.print(artikel [i].menge+i);
write.print(artikel [i].mengeneinheit+i);
write.print(artikel [i].preis+i);
}
write.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
public static void lesen () throws IOException
{
BufferedReader reader = new BufferedReader (new FileReader("test2.txt"));
System.out.println(reader.readLine());
}
}