JDialog bileşeni temel de JFrame ile aynıdırlar. Programlar da her hangi bir bileşene basıldığında yeni bir ekranın gelmesini ve o ekranda işlemlerimizi yapıp bitirdikten sonra pencereyi kapattığımızda programın kapanmasını istemiyorsak JDialog bileşeni işimizi fazlasıyla görecektir. Bu bileşen de açılan pencere üzerinde setLayout( ) metodu ile layout ları ayarlayıp ona göre içerisine bileşenler koyabiliriz. Tıpkı pencere olayında ki gibi , orada ne yapıyorsak buradada aynı şeyleri yapmakta özgürüz. Lafı fazla uzatmadan kod kısmına geçelim. Aşağıda ki kodlar bir pencere de ki bas butonuna basıldığında açılan bir JDialog penceresini göstermektedir.
package jdialogpenceresi;
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;
import javax.swing.JOptionPane;
public class olay extends JFrame {
JDialog dialog=new JDialog();
JButton buton1=new JButton("OK");
JButton buton2=new JButton("CANCEL");
JButton as=new JButton("BAS");
public olay()
{
setLayout(new FlowLayout());
add(as);
as.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
dialog.setVisible(true);
dialog.setLocationRelativeTo(null);
dialog.setSize(300, 100);
dialog.setLayout(new FlowLayout());
dialog.add(buton1);
buton1.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
JOptionPane.showMessageDialog(null, "OK butonuna bastınız.");
}
});
buton2.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
JOptionPane.showMessageDialog(null, "CANCEL butonuna bastınız.");
}
});
dialog.add(buton2);
}
});
}
}
Hiç yorum yok:
Yorum Gönder