ダイアログを表示し、[OK] をクリックした後に値を返す関数 (JOptionPane.showMessageDialog(xxx,"xxx") など) を作成しようとすると、ストレスの多い週末がかかりますか? コードを書くのを手伝ってくれる人はいますか?
前もって感謝します
マカラ
ダイアログを表示し、[OK] をクリックした後に値を返す関数 (JOptionPane.showMessageDialog(xxx,"xxx") など) を作成しようとすると、ストレスの多い週末がかかりますか? コードを書くのを手伝ってくれる人はいますか?
前もって感謝します
マカラ
JOptionPane.showInputDialog()を使用します。
他の方法は、GUIコントロールをJOptionPane.showMessageDialog()に渡して、閉じたらコントロールの状態を照会するか、JDialogを使用することです。
JOptionPaneを必要なとおりに実行するために15分以上を費やす場合は、JOptionPaneがそのジョブのクラスではないことを示す良い兆候です。
ここでは、簡単なアプローチがあります。これは関数ではなくクラスです。2 つのパラメーターだけで構築する場合は、必要な 2 つのパラメーターを持つ追加のコンストラクターを作成します。
ここで本物のマッコイを見ることができます...
public class MyOwnJDialog extends javax.swing.JDialog {
private String theMessage;
public MyOwnJDialog(java.awt.Frame parent, boolean modal, String theMessage) {
super(parent, modal);
initComponents();
this.theMessage = theMessage;
jLabel1.setText(theMessage);
setVisible(true);
}
private void initComponents() {
jLabel1 = new javax.swing.JLabel();
jPanel1 = new javax.swing.JPanel();
jButton1 = new javax.swing.JButton();
setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE);
getContentPane().add(jLabel1, java.awt.BorderLayout.CENTER);
jButton1.setText("OK");
jButton1.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton1ActionPerformed(evt);
}
});
jPanel1.add(jButton1);
getContentPane().add(jPanel1, java.awt.BorderLayout.SOUTH);
pack();
}
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
dispose();
}
private javax.swing.JButton jButton1;
private javax.swing.JLabel jLabel1;
private javax.swing.JPanel jPanel1;
}
いくつかの便利なアイテム: