我的目標是在JTextField中編寫對用戶可見的內容,並在控制檯中顯示此文本。 截至目前,JTextField正在接受文本,但沒有顯示。沒有光標,沒有文字。如何使JTextField文本可見?
我試過使用textfield.setEditable(true),textfield.setEnable(true)和不同的前景和背景顏色,但沒有任何反應。好奇地我可以使用textField.setText(「隨機文本」),它顯示,但我不能刪除它或在程序運行時編輯它,它不包含在getText()的輸出中。
這是程序:
import acm.program.*;
import java.awt.Color;
import java.awt.event.*;
import javax.swing.*;
@SuppressWarnings("serial")
public class TextFieldTest extends ConsoleProgram implements SomeConstants {
public void init() {
setSize(APPLICATION_WIDTH, APPLICATION_HEIGHT);
textField = new JTextField(20);
add(textField, SOUTH);
textField.addActionListener(this);
}
public void actionPerformed(ActionEvent e) {
if (e.getSource() == textField)
println("Hi, " + textField.getText());
}
private JTextField textField;
}
你能評論整個actionPerformed的邏輯,而不是再試一次。 – rbhawsar
評論它 - 當我嘗試在Jtextfield中寫入時沒有任何顯示。我嘗試在不同的組合中評論addlistener,邏輯和方法。 – Tor
如果我創建一個JFrame並添加JTextField它工作正常,所以我想它與我使用acm(consoleprogram)的事實有關? – Tor