gpt4 book ai didi

java - 如何在 JOptionPane 上使用 `doClick()`?

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

我有一个带有两个按钮的自定义 JOptionPane,如下所示:

AgreementPanel panel = new AgreementPanel(this); // JPanel with some JLabels and JTextFields
JOptionPane pane = new JOptionPane(panel, JOptionPane.NO_OPTION);
Object[] options = {"Accept", "Decline"};
option = pane.showOptionDialog(null, panel, "Agreement", JOptionPane.DEFAULT_OPTION, JOptionPane.PLAIN_MESSAGE, null, options, panel.txtMessage);

如何在 Accept 按钮上使用 doClick()?我的程序中的某个地方需要它

最佳答案

您可以直接将 jbutton 传递给 showOptionDialog() 方法,而不是将选项作为字符串传递。它在内部检查它是否是一个按钮,然后直接将其添加到按钮区域。

所以做这样的事情:

JButton btnAccept = new JButton("Accept");
Object[] options = {btnAccept , "Decline"};
btn.doClick();

请注意,BasicOptionPaneUI 将负责正确检查和添加按钮。

更新:您可以手动设置actionListener,组件直接传递:

ActionListener al = ((BasicOptionPaneUI)optionPane.getUI()).new ButtonActionListener(1);
btnAccept.setActionListener(al);

关于java - 如何在 JOptionPane 上使用 `doClick()`?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6466977/

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