0
我想構建一個Swing組件的JTextField,這裏是我的代碼如何構建一個JTextField,以及如何使用方法全選()
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class JTextFieldGui{
JTextField textField;
JLabel labelInput;
JLabel labelOutput;
public static void main(String[] args) {
JTextFieldGui gui = new JTextFieldGui();
gui.go();
}
public void go(){
JFrame frame = new JFrame();
JPanel panelInput = new JPanel();
JPanel panelOutput = new JPanel();
labelInput = new JLabel("Your first name: ");
labelOutput = new JLabel("Enter your name, and you will see it here.");
textField = new JTextField(20);
JButton enter = new JButton("Enter");
JButton selectAll = new JButton("Select all text");
frame.setSize(300,200);
frame.setVisible(true);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
panelInput.setLayout(new BoxLayout(panelInput, BoxLayout.X_AXIS));
textField.addActionListener(new LabelActionListener());
enter.addActionListener(new LabelActionListener());
selectAll.addActionListener(new TextFieldActionlistener());
frame.getContentPane().add(BorderLayout.NORTH, panelInput);
panelInput.add(labelInput);
panelInput.add(textField);
panelInput.add(enter);
panelInput.add(selectAll);
frame.getContentPane().add(BorderLayout.CENTER, panelOutput);
panelOutput.add(labelOutput);
}
class LabelActionListener implements ActionListener{
public void actionPerformed(ActionEvent event){
labelOutput.setText(textField.getText());
}
}
class TextFieldActionlistener implements ActionListener{
public void actionPerformed(ActionEvent event){
textField.selectAll();
}
}
}
問題1:我定義文本字段的寬度在20列,但它始終佔用一排樣圖像:
問題2:如何使用全選()方法,我用它的按鈕全選的聽衆,但是當我按一下按鈕,什麼也沒有發生,爲什麼
嗨,感謝您回答我的問題, 但我仍然沒有成功 將它添加到「TextFieldActionlistener」類中?之前「textField.selectAll();」 ?或者一些地方? –
@Lixiaoyu,它的一行代碼。你爲什麼會問一個後續問題。在「selectAll()'語句之前和之後嘗試一下,看看會發生什麼。你通過嘗試學習! – camickr
YESSSS,這真的很有幫助,我需要更多的嘗試,我現在得到它,並且謝謝你! –