ボタンを使用してtextfield1から入力した後、Textarea1の値を保持したい。私がそれを実行するたびに、値は新しいもののために消えます。私が初めてそれを行うとき、私は挿入した名前の価値を得るが、私はそれを消すときに2回目を行う。ありがとう、ありがとう。Textareaの値をテキストフィールドから永久に保持したい(Java GUI)
import javax.swing.UIManager.LookAndFeelInfo;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.awt.event.MouseWheelEvent;
import java.awt.event.MouseWheelListener;
import javax.swing.border.Border;
import javax.swing.*;
public class GUI_project2 extends JFrame {
private JMenuBar menuBar;
private JButton button1;
private JTextArea textarea1;
private JTextField textfield1;
static String MYARRAY[] = new String[4];
static int COUNTER = 0;
static String NEWITEM = null;
//Constructor
public GUI_project2(){
this.setTitle("GUI_project2");
this.setSize(1118,845);
//menu generate method
generateMenu();
this.setJMenuBar(menuBar);
//pane with null layout
JPanel contentPane = new JPanel(null);
contentPane.setPreferredSize(new Dimension(1118,845));
contentPane.setBackground(new Color(192,192,192));
button1 = new JButton();
button1.setBounds(206,109,90,35);
button1.setBackground(new Color(214,217,223));
button1.setForeground(new Color(0,0,0));
button1.setEnabled(true);
button1.setFont(new Font("sansserif",0,12));
button1.setText("Add Word");
button1.setVisible(true);
//Set methods for mouse events
//Call defined methods
button1.addMouseListener(new MouseAdapter() {
public void mouseClicked(MouseEvent evt) {
ButtonClicked(evt);
}
});
textfield1 = new JTextField();
textfield1.setBounds(203,46,90,35);
textfield1.setBackground(new Color(255,255,255));
textfield1.setForeground(new Color(0,0,0));
textfield1.setEnabled(true);
textfield1.setFont(new Font("sansserif",0,12));
textfield1.setText("");
textfield1.setVisible(true);
textarea1 = new JTextArea();
textarea1.setBounds(27,48,150,100);
textarea1.setBackground(new Color(255,255,255));
textarea1.setForeground(new Color(0,0,0));
textarea1.setEnabled(true);
textarea1.setFont(new Font("sansserif",0,12));
textarea1.setText("");
textarea1.setBorder(BorderFactory.createBevelBorder(1));
textarea1.setVisible(true);
//adding components to contentPane panel
contentPane.add(button1);
contentPane.add(textfield1);
contentPane.add(textarea1);
//adding panel to JFrame and seting of window position and close operation
this.add(contentPane);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setLocationRelativeTo(null);
this.pack();
this.setVisible(true);
}
//Method mouseClicked for button1
private void ButtonClicked (MouseEvent evt) {
//TODO
NEWITEM = textfield1.getText();
if (NEWITEM.compareTo("end")!=0){
MYARRAY[COUNTER] = NEWITEM;
COUNTER++;
if (COUNTER == MYARRAY.length){
increaseArraySize();
}
}
String NEWITEM = "";
listArray();
}
public void listArray(){
for (int X=0;X<MYARRAY.length;X++){
textarea1.setText(textfield1.getText());
}
}
public static void increaseArraySize(){
System.out.print("Here we increase the size to ");
String TEMP[] = new String[MYARRAY.length*2];
System.arraycopy(MYARRAY, 0, TEMP, 0, MYARRAY.length);
MYARRAY = TEMP;
System.out.println(TEMP.length);
}
//method for generate menu
public void generateMenu(){
menuBar = new JMenuBar();
JMenu file = new JMenu("File");
JMenu tools = new JMenu("Tools");
JMenu help = new JMenu("Help");
JMenuItem open = new JMenuItem("Open ");
JMenuItem save = new JMenuItem("Save ");
JMenuItem exit = new JMenuItem("Exit ");
JMenuItem preferences = new JMenuItem("Preferences ");
JMenuItem about = new JMenuItem("About ");
file.add(open);
file.add(save);
file.addSeparator();
file.add(exit);
tools.add(preferences);
help.add(about);
menuBar.add(file);
menuBar.add(tools);
menuBar.add(help);
}
public static void main(String[] args){
System.setProperty("swing.defaultlaf", "com.sun.java.swing.plaf.nimbus.NimbusLookAndFeel");
javax.swing.SwingUtilities.invokeLater(new Runnable() {
public void run() {
new GUI_project2();
}
});
}
}
に中空からそれを切り替えるには答えの横にチェックマークをクリックしてください
(このチェックは、消去されたばかりのテキストエリアを防ぎます)これは、テキストフィールドに入力するたびに値を保持するようになります。私は3 *値を入力します。 – CSStudent
@CSStudent、問題のいくつかの基本的なデバッグを行います。あなたの問題を解決するために他の人に頼ってはいけません! **テキストを3回追加しないでください。**これを行う理由を調べて、コードを修正してください! – camickr
私は、プログラミングの初心者です。 – CSStudent