hallo liebe java-freunde!
leider stoße ich auf ein (simples) problem.
ich rufe aus einer klasse ein dialog-fenster auf:
das dialog-fenster enthält eine eingabemaske (textfield). nun möchte ich den eingegebenen string, an meine klasse zurückgeben, wenn der button 'ok' gedrückt wurde und das dialog-fenster sich wieder schliesst. doch leider hapert es an dieser problemstellung
hier die dialog-klasse:
wie ist das zu lösen?
leider stoße ich auf ein (simples) problem.
ich rufe aus einer klasse ein dialog-fenster auf:
Code:
ArticCell_Frame_HeaderDialog dlg = new ArticCell_Frame_HeaderDialog(this, propertieValue_Header[1].toString());
Dimension dlgSize = dlg.getPreferredSize();
Dimension frmSize = getSize();
Point loc = getLocation();
dlg.setLocation((frmSize.width - dlgSize.width) / 2 + loc.x, (frmSize.height - dlgSize.height) / 2 + loc.y);
dlg.setModal(true);
dlg.pack();
dlg.show();
das dialog-fenster enthält eine eingabemaske (textfield). nun möchte ich den eingegebenen string, an meine klasse zurückgeben, wenn der button 'ok' gedrückt wurde und das dialog-fenster sich wieder schliesst. doch leider hapert es an dieser problemstellung
hier die dialog-klasse:
Code:
public class ArticCell_Frame_HeaderDialog extends JDialog {
String findString = "";
String tempString = "";
JPanel jPanel1 = new JPanel();
JLabel jLabel1 = new JLabel();
BorderLayout borderLayout1 = new BorderLayout();
JPanel jPanel2 = new JPanel();
JTextField jTextField1 = new JTextField();
JLabel jLabel2 = new JLabel();
FlowLayout flowLayout1 = new FlowLayout();
JButton Header_jButton_OK = new JButton();
public ArticCell_Frame_HeaderDialog(Frame parent, String findString_) {
super(parent);
enableEvents(AWTEvent.WINDOW_EVENT_MASK);
this.findString = findString_;
try {
jbInit();
} catch (Exception e) {
e.printStackTrace();
}
}
private void jbInit() throws Exception {
jLabel1.setFont(new java.awt.Font("Dialog", 1, 15));
jLabel1.setAlignmentX((float) 5.0);
jLabel1.setHorizontalAlignment(SwingConstants.CENTER);
jLabel1.setText("There is no Header-Information found in Data-File!");
jPanel1.setLayout(borderLayout1);
jPanel2.setLayout(flowLayout1);
jTextField1.setText("");
jTextField1.setColumns(15);
jLabel2.setText("Please enter the Value for " + findString + " :");
Header_jButton_OK.setMaximumSize(new Dimension(45, 22));
Header_jButton_OK.setMinimumSize(new Dimension(45, 22));
Header_jButton_OK.setPreferredSize(new Dimension(45, 22));
Header_jButton_OK.setText("ok");
Header_jButton_OK.addActionListener(new ArticCell_Frame_HeaderDialog_Header_jButton_OK_actionAdapter(this));
this.setTitle("Headerinformation");
this.getContentPane().add(jLabel1, BorderLayout.NORTH);
this.getContentPane().add(jPanel2, BorderLayout.SOUTH);
jPanel2.add(jLabel2, null);
jPanel2.add(jTextField1, null);
jPanel2.add(Header_jButton_OK, null);
this.getContentPane().add(jPanel1, BorderLayout.CENTER);
}
/*nach drücken soll der wert an die klasse zurückgegeben werden und das dialog-fenster soll sich schliessen*/
void Header_jButton_OK_actionPerformed(ActionEvent e) {
tempString = jTextField1.getText();
}
}
class ArticCell_Frame_HeaderDialog_Header_jButton_OK_actionAdapter implements java.awt.event.ActionListener {
ArticCell_Frame_HeaderDialog adaptee;
ArticCell_Frame_HeaderDialog_Header_jButton_OK_actionAdapter(ArticCell_Frame_HeaderDialog adaptee) {
this.adaptee = adaptee;
}
public void actionPerformed(ActionEvent e) {
adaptee.Header_jButton_OK_actionPerformed(e);
}
}
wie ist das zu lösen?