Popup menünün önemli bir özelliği ise mouselistener ile çalışmasıdır. Zaten adı üzerinde sağ tık menüsü. lafı fazla uzatmadan uygulamamızın olduğu class'ın kodlarını hemen yazalım. Ha unutmadan bir önceki yazımla alakalı bir örnek daha yaptım. Menülere ikonun nasıl ekleneceği hususunda bir uygulama oldu. O uygulamayı da bu örneğin içine atarım. Oradan incelersiniz. Sorularınız için mcelenk@yuvamgroup.com adresine mail atabilirsiniz.
package popupmenu;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import javax.swing.ImageIcon;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JMenuItem;
import javax.swing.JOptionPane;
import javax.swing.JPopupMenu;
public class popup extends JFrame {
ImageIcon im=new ImageIcon(getClass().getResource("/resim/ytu.gif"));
JLabel l=new JLabel(im);
JPopupMenu pop=new JPopupMenu();
JMenuItem item1=new JMenuItem("Notepad");
JMenuItem item2=new JMenuItem("Paint");
JMenuItem item3=new JMenuItem("Çıkış");
public olay() {
super("Popupmenü uygulaması");
add(l);
l.addMouseListener(new MouseAdapter() {
@Override
public void mouseReleased(MouseEvent e) {
super.mouseReleased(e);
if(e.isPopupTrigger())
{
pop.show(e.getComponent(), e.getX(), e.getY());
}
}
});
pop.add(item1);
item1.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
Runtime r=Runtime.getRuntime();
Process p=null;
try {
p=r.exec("C:\\Windows\\notepad.exe");
} catch (Exception ex) {
JOptionPane.showMessageDialog(null, "Bir hata oluştu","HATA",JOptionPane.ERROR_MESSAGE);
}
}
});
pop.add(item2);
item2.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
Runtime r=Runtime.getRuntime();
Process p=null;
try {
p=r.exec("C:\\Windows\\system32\\mspaint.exe");
} catch (Exception ex) {
JOptionPane.showMessageDialog(null, "Bir hata oluştu","HATA",JOptionPane.ERROR_MESSAGE);
}
}
});
pop.add(item3);
item3.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
System.exit(0);
}
});
}
}
Uygulamanın kaynak kodlarını, jar dosyasını ve yukarıda bahsettiğim bir önceki ders ile alakalı misali buradan indirebilirsiniz. İyi çalışmalar.
Uygulamanın kaynak kodlarını, jar dosyasını ve yukarıda bahsettiğim bir önceki ders ile alakalı misali buradan indirebilirsiniz. İyi çalışmalar.
Hiç yorum yok:
Yorum Gönder