私はJframe(マインツ)を持っています、
ボタン(showDialog)があり、
ユーザーがボタンをクリックすると、
jdialog (Dialogz) が表示されます。
そのjdialogにはボタンがあります
- そのボタンからjdialogを閉じる方法(jdialog内)?
- ダイアログのインスタンスを作成した後でダイアログのモーダルを変更できますか?
そのjdialogの所有者をブロックする必要があります
ここで試してみます...
import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JDialog;
import javax.swing.JFrame;
public class Mainz extends JFrame implements ActionListener{
JButton showDialog = new JButton("show dialog");
public Mainz() {
setLayout(new FlowLayout());
showDialog.addActionListener(this);
add(showDialog);
setVisible(true);
}
@Override
public void actionPerformed(ActionEvent e) {
new Dialogz(this, true);
}
public static void main(String[]args){
new Mainz();
}
}
class Dialogz extends JDialog{
JButton close = new JButton("close");
public Dialogz(JFrame owner,boolean modal) {
super(owner, modal);
System.out.println(this.getModalityType());
add(close);
setLocationRelativeTo(owner);
setVisible(true);
close.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent ae){
closez();
}
});
}
void closez(){
setModal(false);
this.dispose();
System.out.println("Method Done");
}
}
あらゆる種類の助けに感謝します