【发布时间】:2015-03-26 15:52:44
【问题描述】:
我需要能够将文本字段的输入设置为字符数组。我尝试从文本字段中获取文本并将其设为字符串,然后将该字符串转换为字符,但这不起作用。
我在此行收到错误:String string = TextField.getText();
错误表明我:Cannot make a static reference to a non static method getText() from the type textComponent
我不太确定我哪里出错了,所以非常感谢任何帮助。
package lab4;
import java.awt.Color;
import java.awt.Font;
import java.awt.GridLayout;
import java.awt.Label;
import java.awt.TextField;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.Scanner;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextField;
import lab3.FontSize;
import lab3.Calculator.event;
public class Scrolling extends JFrame{
JLabel label;
JTextField Textfield;
JPanel panel;
public String string;
public static void main (String[]args){
Scrolling scroller = new Scrolling();
scroller.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
scroller.setTitle("Marquee scroller");
scroller.setSize(1500,750);
scroller.setVisible(true);
scroller.setLayout(new GridLayout(2,1));
}
public Scrolling() {
JPanel panel1 = new JPanel();
panel1.setLayout(new GridLayout(1,2));
panel1.setSize(1500, 300);
JLabel label = new JLabel("Enter text and press return");
label.setVisible(true);
label.setFont(label.getFont().deriveFont(30.0f));
label.setHorizontalAlignment(JLabel.CENTER);
panel1.add(label);
JTextField TextField = new JTextField();
TextField.setVisible(true);
TextField.setFont(TextField.getFont().deriveFont(30.0f));
TextField.setHorizontalAlignment(JTextField.CENTER);
panel1.add(TextField);
JPanel panel2 = new JPanel();
panel2.setLayout(new GridLayout(1,10));
Label[] labelArray = new Label[10];
for(int i = 0; i < 10; i ++){
labelArray[i] = new Label("");
labelArray[i].setBackground(Color.white);
labelArray[i].setAlignment(Label.CENTER);
labelArray[i].setFont(new Font("Serif", Font.BOLD, 30));
labelArray[i].setText("1");
panel2.add(labelArray[i]);
}
add(panel2);
add(panel1);
event e = new event();
TextField.addActionListener(e);
}
public class event implements ActionListener {
public void actionPerformed(ActionEvent e) {
String string = TextField.getText();
char[] charArray = string.toCharArray();
}
}
}
【问题讨论】:
标签: java arrays string text textfield