JTextField
就在那里,因为当我将鼠标移动到它应该是鼠标图标变为光标的位置时,当我点击它时会显示出来。但它在发布时是看不见的。我错过了什么?
public class JavaSwingTextfield extends JFrame {
private static final long serialVersionUID = 1L;
JTextField myTextField;
public JavaSwingTextfield(){
/***** JFrame setup *****/
// Set the size of the window
setSize(600,600);
// Make the application close when the X is clicked on the window
setDefaultCloseOperation(EXIT_ON_CLOSE);
// Makes the JFrame visible to the user
setVisible(true);
/***** JFrame setup END *****/
/***** JButton setup *****/
// Create a JLabel and set its label to "Start"
myTextField = new JTextField("Start");
// Set the label's size
myTextField.setSize(100, 50);
// Put the label in a certain spot
myTextField.setLocation(200, 50);
// Set a font type for the label
//Font myFont = new Font("Serif", Font.BOLD, 24);
//myTextField.setFont(myFont);
// Add the label to the JFrame
add(myTextField);
/***** JButton setup END *****/
}
/***** The main method *****/
public static void main(String[] args){
new JavaSwingTextfield();
}
}
答案 0 :(得分:11)
Event Dispatch Thread
创建GUI组件setVisible(..)
之前不要致电JFrame
(这是以上代码将实际错误+1传输到@Clark)JFrame
类setSize(..)
,而只需在设置JFrame#pack()
可见JFrame
setSize()
,而应查看其构造函数:JTextField(String text,int columns)
JTextField
,有关示例,请参阅此处:A Visual Guide to Layout Managers 这是我做的一个例子(基本上是修复代码):
LayoutManager
答案 1 :(得分:4)
您将JTextfield
添加到JFrame
后,JFrame
可见。只需手动添加JTextField
。