【Swing】JTextField設定游標

翠微發表於2024-05-30

1、設定焦點

焦點預設是在窗體的第一個元件上

UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
JFrame window = new JFrame();
JPanel panel = new JPanel(new FlowLayout(FlowLayout.LEFT));

JButton messageDialog = new JButton("訊息框");
messageDialog.addActionListener(l -> {
    // ERROR_MESSAGE, INFORMATION_MESSAGE, WARNING_MESSAGE, QUESTION_MESSAGE, PLAIN_MESSAGE
    JOptionPane.showMessageDialog(window, "訊息對話方塊", "Title",JOptionPane.PLAIN_MESSAGE);
});
panel.add(messageDialog);

JTextField textField = new JTextField(20);
textField.setText("0123456789");
window.addWindowListener(new WindowAdapter() {
    public void windowOpened(WindowEvent e ){
        textField.requestFocus();
    }
});
textField.select(2,5);
panel.add(textField);


// 主窗體
window.setTitle("Swing");
window.setContentPane(panel);
Dimension dimension = Toolkit.getDefaultToolkit().getScreenSize();
window.setBounds(dimension.width / 4, dimension.height / 4, dimension.width / 2, dimension.height / 2);
window.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
window.setVisible(true);

2、

相關文章