View Single Post
  #1 (permalink)  
Old 07-14-2007, 02:54 PM
AdnanAhsan
Posts: n/a
[SOLVED] Creating Popup Menu ...

ok in this tutorial, i an teaching how to add Popup Menus to your Application, Just read it careful, also try to do some practice, because practice makes a man perfect....


Importing Packages, you should know about packages...
PHP Code:

import java
.awt.*;
import java.awt.event.*;
import javax.swing.*; 
now creating class with JFrame than initializing variables, creating constructor adding components etc
PHP Code:
public class PMDemo extends JFrame 
{
    
JMenuBar mb;
    
JMenu file,edit;
    
JMenuItem open,close,copy,paste;
    
JPopupMenu pm;
    static 
JFrame f;

public PMDemo(String s)
{
    
super(s);
    
f=this;
    
mb=new JMenuBar();
    
file=new JMenu("File");
    
edit=new JMenu("Edit");
    
open=new JMenuItem("open",KeyEvent.VK_O);
    
close=new JMenuItem("close",KeyEvent.VK_L);
    
copy=new JMenuItem("copy",KeyEvent.VK_C);
    
paste=new JMenuItem("paste",KeyEvent.VK_P);
    
file.add(open);
    
file.add(close);
    
edit.add(copy);    
    
edit.add(paste);
    
mb.add(file);
    
mb.add(edit);
    
getRootPane().setJMenuBar(mb);
    
file.setMnemonic(KeyEvent.VK_F);
    
pm=new JPopupMenu();
    
open=new JMenuItem("Arrange");
    
close=new JMenuItem("Refresh");
    
copy=new JMenuItem("Copy");
    
paste=new JMenuItem("Paste");
    
pm.add(open);
    
pm.add(close);
    
pm.add(copy);
    
pm.add(paste);
    
MouseListener ml=new Javed();
    
f.addMouseListener(ml);
    

now creating class for Mouse Listener Interface Implementation

PHP Code:
public class Javed extends MouseAdapter
{
private void thisWillShow(MouseEvent me)
{
    if(
me.isPopupTrigger())
    {
        
pm.show(me.getComponent(),me.getX(),me.getY());
    }
}
public void mouseReleased(MouseEvent a)
{
     
thisWillShow(a);
}


The Orignal Complete Source is Below ... You can test it, this is a little hard way, but i will tell you easy way to create popup menu in near future. i hope you will like this tutorial too...

PHP Code:

import java
.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class PMDemo extends JFrame 
{
    
JMenuBar mb;
    
JMenu file,edit;
    
JMenuItem open,close,copy,paste;
    
JPopupMenu pm;
    static 
JFrame f;

public PMDemo(String s)
{
    
super(s);
    
f=this;
    
mb=new JMenuBar();
    
file=new JMenu("File");
    
edit=new JMenu("Edit");
    
open=new JMenuItem("open",KeyEvent.VK_O);
    
close=new JMenuItem("close",KeyEvent.VK_L);
    
copy=new JMenuItem("copy",KeyEvent.VK_C);
    
paste=new JMenuItem("paste",KeyEvent.VK_P);
    
file.add(open);
    
file.add(close);
    
edit.add(copy);    
    
edit.add(paste);
    
mb.add(file);
    
mb.add(edit);
    
getRootPane().setJMenuBar(mb);
    
file.setMnemonic(KeyEvent.VK_F);
    
pm=new JPopupMenu();
    
open=new JMenuItem("Arrange");
    
close=new JMenuItem("Refresh");
    
copy=new JMenuItem("Copy");
    
paste=new JMenuItem("Paste");
    
pm.add(open);
    
pm.add(close);
    
pm.add(copy);
    
pm.add(paste);
    
MouseListener ml=new Javed();
    
f.addMouseListener(ml);
    
}
public class Javed extends MouseAdapter
{
private void thisWillShow(MouseEvent me)
{
    if(
me.isPopupTrigger())
    {
        
pm.show(me.getComponent(),me.getX(),me.getY());
    }
}
public void mouseReleased(MouseEvent a)
{
     
thisWillShow(a);
}
}
public static void main(String abc[])
{
    
PMDemo ob=new PMDemo("popup mnue title");
    
ob.setSize(200,200);
    
ob.setVisible(true);
    
ob.setTitle("ProgrammersTalk - AdnanAhsan");
}


__________________

Digg this Post! Del.Icio.Us this Post! Technorati this Post! Furl this Post! Mister Wong this Post! Newsvine this Post! Spurl this Post! Reddit this Post! Netscape this Post!