gpt4 book ai didi

java - 如何临时禁用 JOptionPane 输入对话框上的“确定”按钮?

转载 作者:行者123 更新时间:2023-12-01 15:03:59 25 4
gpt4 key购买 nike

我的问题是如何临时禁用 JOptionPane 输入对话框上的“确定”按钮,直到按下某个键为止?

最佳答案

这是一个例子:

JPanel pan = new JPanel(new BorderLayout());
final JTextField txt = new JTextField(10);
final JButton ok = new JButton("OK");
ok.setEnabled(false);

ok.addActionListener(new ActionListener()
{
@Override
public void actionPerformed(ActionEvent e)
{
String input = txt.getText();
System.out.println("The input is: " + input);

/* close the dialog */
Window w = SwingUtilities.getWindowAncestor(ok);
if(w != null) w.setVisible(false);
}
});

txt.getDocument().addDocumentListener(new DocumentListener()
{
@Override
public void removeUpdate(DocumentEvent e)
{
if(e.getDocument().getLength() == 0) ok.setEnabled(false);
}

@Override
public void insertUpdate(DocumentEvent e)
{
if(e.getDocument().getLength() > 0) ok.setEnabled(true);
}

@Override
public void changedUpdate(DocumentEvent e){}
});

pan.add(txt, BorderLayout.NORTH);
JOptionPane.showOptionDialog(null, pan, "The Title", JOptionPane.NO_OPTION, JOptionPane.PLAIN_MESSAGE, null, new JButton[]{ok}, ok);

关于java - 如何临时禁用 JOptionPane 输入对话框上的“确定”按钮?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13228788/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com