Hallo,
ich habe nun lange versucht Google zu durchstöbern um eine Antwort auf meine Frage zu erhalten. Vergebens. Nun versuche ich es hier:
Was ich versuche ist, in meine JComboBox, 3 verschiedene Werte aus 3 verschiedenen JTextFields als ein Punkt (bspw: "Wert1" + "Wert2"+ "Wert3") in der JComboBox zu speichern.
Alle 3 TextFields sind editierbar. Ich glaube mein Controller und view sind nicht richtig miteinander verknüpft.
(Ich habe vieles rausgeschnitten wie bspw container.add... damit es übersichtlicher wird.
Mir gehts es hier lediglich um die Frage wieso mein Button nichts macht.
(Die Klassen sind in verschiedenen Packages)
Java:
Über eine Hilfe wäre ich sehr dankbar.
Mit freundlichen Grüßen
ich habe nun lange versucht Google zu durchstöbern um eine Antwort auf meine Frage zu erhalten. Vergebens. Nun versuche ich es hier:
Was ich versuche ist, in meine JComboBox, 3 verschiedene Werte aus 3 verschiedenen JTextFields als ein Punkt (bspw: "Wert1" + "Wert2"+ "Wert3") in der JComboBox zu speichern.
Alle 3 TextFields sind editierbar. Ich glaube mein Controller und view sind nicht richtig miteinander verknüpft.
(Ich habe vieles rausgeschnitten wie bspw container.add... damit es übersichtlicher wird.
Mir gehts es hier lediglich um die Frage wieso mein Button nichts macht.
(Die Klassen sind in verschiedenen Packages)
Java:
Java:
Im Controller steht also
package controller;
import java.awt.Container;
import java.awt.event.*;
import javax.swing.JComboBox;
import javax.swing.JFileChooser;
import javax.swing.JTextField;
import model.Model;
import view.View;
import java.io.File;
public class Controller {
private View frame;
private Model model;
public SpeichernListener getSpeichernListener() {
return new SpeichernListener();
}
public void setView(View frame) {
this.frame = frame;
frame.getSpeichern();
}
class SpeichernListener implements ActionListener {
@Override
public void actionPerformed(ActionEvent ae)
{
model = new Model();
JTextField sources = (JTextField) ae.getSource();
JComboBox source = (JComboBox) ae.getSource();
Container c = (Container) sources.getParent();
frame.setTitel(frame.getTitel1().getText(),frame.getTitel2().getText(), frame.getTitel3().getText());
}
}
}
Und im View steht folgendes:
package view;
import javax.swing.*;
import javax.swing.border.TitledBorder;
import controller.Controller;
import java.awt.*;
public class View extends JFrame{
private Container container;
private JLabel beschriftung;
private Controller controlleri;
private JComboBox box;
private JTextField titel1, titel2, titel3;
private JButton speichern;
public View () {
try {
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
System.out.println("UIManager.getSystemLookAndFeelClassName() = "
+ UIManager.getSystemLookAndFeelClassName());
} catch (Exception e) {
System.out.println("Error setting native LAF: " + e);
}
beschriftung = new JLabel("VL Suche");
container = getContentPane();
titel1 = new JTextField("M");
titel1.setText(" ");
titel1.setEditable(true);
titel2 = new JTextField("M");
titel2.setText(" ");
titel2.setEditable(true);
titel3 = new JTextField("M");
titel3.setText(" ");
titel3.setEditable(true);
box = new <String>JComboBox ();
speichern = new JButton ("Speichern");
public void setController(Controller controller) {
this.controlleri = controller;
speichern.addActionListener(this.controlleri.getSpeichernListener());
}
public JComboBox getButton() {
return button;
}
public void setTitel(String titel, String titelzwei, String titeldrei ) {
this.box.addItem(titel + titelzwei + titeldrei);
}
public JTextField getTitel1() {
return titel1;
}
public void setTitel1(JTextField titel1) {
this.titel1 = titel1;
}
public JTextField gettitel2() {
return titel2;
}
public void settitel2(JTextField titel2) {
this.titel2 = titel2;
}
public JTextField gettitel3() {
return titel3;
}
public void setTitel3(JTextField titel3) {
this.titel3 = titel3;
}
Über eine Hilfe wäre ich sehr dankbar.
Mit freundlichen Grüßen
Zuletzt bearbeitet: