nik324 Δημοσ. 9 Ιανουαρίου 2014 Δημοσ. 9 Ιανουαρίου 2014 Δινω μέσα απο ενα ui ενα κείμενο και θελω να αποθηκευεται σε μια μεταβλητη string. O κωδικας ειναι ο παρακατω και ειναι παρα πολυ απλος αλλα για καποιο λογο δεν περνει την σωστη τιμη η μεταβλητη string (δεν περνει καμια τιμη συγκεκριμενα) public class test extends JFrame { private JTextArea textArea; private JScrollPane scrollPane; private String textData = ""; public test() { textArea = new JTextArea(8, 40); scrollPane = new JScrollPane(textArea); setTitle("Get Text From User"); setSize(500, 300); Container contentPane = getContentPane(); JPanel panel = new JPanel(); JButton replaceButton = new JButton("Ok"); panel.add(replaceButton); replaceButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent evt) { textData = textArea.getText(); // εδω η textData δεν περνει τιμη dispose(); } }); contentPane.add(panel, "South"); contentPane.add(scrollPane, "Center"); setVisible(true); } public String getTextData(){ return this.textData ; } public static void main(String [] lala ){ test i = new test(); System.out.println( i.getTextData() ); } }
gon1332 Δημοσ. 9 Ιανουαρίου 2014 Δημοσ. 9 Ιανουαρίου 2014 Για δες λίγο αυτό http://stackoverflow.com/questions/5319397/how-to-get-text-from-jtextarea
nik324 Δημοσ. 9 Ιανουαρίου 2014 Μέλος Δημοσ. 9 Ιανουαρίου 2014 Ευχαριστώ για την γρηγορη απαντηση. Μπορω να το κανω να δουλεψει αν αλλαξω εντελως τον κωδικα και δοκιμασω κατι αλλο..Το προβλημα μου ειναι ομως γιατι δεν δουλευει ετσι οπως το εχω κανει.. Ο κωδικας ειναι παρα πολυ απλος..
gon1332 Δημοσ. 9 Ιανουαρίου 2014 Δημοσ. 9 Ιανουαρίου 2014 Εγώ το δοκίμασα βάζοντας μία εκτύπωση της textData ακριβώς μετά το textData = textArea.getText(); και πήρε τιμή. import java.awt.Container; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.*; public class test extends JFrame { private JTextArea textArea; private JScrollPane scrollPane; private String textData = ""; public test() { textArea = new JTextArea(8, 40); scrollPane = new JScrollPane(textArea); setTitle("Get Text From User"); setSize(500, 300); Container contentPane = getContentPane(); JPanel panel = new JPanel(); JButton replaceButton = new JButton("Ok"); panel.add(replaceButton); replaceButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent evt) { textData = textArea.getText(); // εδω η textData δεν περνει τιμη System.out.println(textData); dispose(); } }); contentPane.add(panel, "South"); contentPane.add(scrollPane, "Center"); setVisible(true); } public String getTextData(){ return this.textData ; } public static void main(String [] lala ){ test i = new test(); System.out.println( i.getTextData() ); } }
nik324 Δημοσ. 9 Ιανουαρίου 2014 Μέλος Δημοσ. 9 Ιανουαρίου 2014 Εδω είναι το κουλό.. Αν βαλεις ενα print το περνει κανονικα. Το προβλημα ειναι οτι δεν δινει τιμη στην μεταβλητη της κλάσης :\ Ειναι τελειως παραλογο αυτο, το ξερω.. Το προβλημα θα ειναι σε κατι εντελως ηλιθιο
Timonkaipumpa Δημοσ. 9 Ιανουαρίου 2014 Δημοσ. 9 Ιανουαρίου 2014 Βγάλε το dispose μέσα στο actionlistener και άλλαξε το με το textArea.setText(""). Λογικά ( ; ) θα είσαι ΟΚ.
georgemarios Δημοσ. 9 Ιανουαρίου 2014 Δημοσ. 9 Ιανουαρίου 2014 public static void main(String [] lala ){ test i = new test(); System.out.println("BLAHBLAH" + i.getTextData() );} Αν βαλεις κατι ακομα στο println σου, θα δεις πως αυτο καλειται ΠΡΙΝ πατησεις το κουμπι. Οποτε γιαυτο δε σου δειχνει τιποτε. Αυτο που μπορεις να κανεις ειναι αντι για JFrame να χρησιμοποιησεις JDialog που σου δινει δυνατοτητα να το εμφανισεις modal, δηλαδη να ανασταλουν ολες οι λειτουργιες της εφαρμογης οσο το παραθυρο αυτο ειναι ανοικτο (οκ, οχι ακριβως, το υπεραπλουστευσα.... googlare για λεπτομερειες) Οποτε αυτο που μπορεις να γραψεις ειναι public class τest extends JDialog{ ..... public τest () { ... setModalityType(ModalityType.APPLICATION_MODAL); setVisible(true); } public String getTextData(){ return this.textData ; } public static void main(String [] lala ){ test i = new test(); System.out.println(i.getTextData() ); } }
Προτεινόμενες αναρτήσεις
Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε
Πρέπει να είστε μέλος για να αφήσετε σχόλιο
Δημιουργία λογαριασμού
Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!
Δημιουργία νέου λογαριασμούΣύνδεση
Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.
Συνδεθείτε τώρα