The ProgrammersTalk Community
Forum Register Search Today's Posts Mark Forums Read
Register

Go Back   The ProgrammersTalk Community > General Programming > Java


Welcome to the The ProgrammersTalk Community forums.

You are currently viewing our boards as a guest which gives you limited access to view most discussions and access our other features. By joining our free community you will have access to post topics, communicate privately with other members (PM), respond to polls, upload content and access many other special features. Registration is fast, simple and absolutely free so please, join our community today!

If you have any problems with the registration process or your account login, please contact contact us.
Tags:

Closed Thread
 
LinkBack Thread Tools    Display Modes   
  #1 (permalink)  
Old 07-14-2007, 01: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!
  #2 (permalink)  
Old 07-14-2007, 01:59 PM
HelloWorld's Avatar
HelloWorld HelloWorld is offline
Programming Expert
Awards Showcase
Quality Tutorial 
Total Awards: 1
Join Date: Jun 2007
Location: In front of computer...
Posts: 1,111
iTrader: (0)
HelloWorld will become famous soon enoughHelloWorld will become famous soon enoughHelloWorld will become famous soon enough
Quote:
JPopupMenu pm;
that's the keyword right there!
Java is so nice with all of these!!! really!!! Don't you think so? They have implemented everything for us

Btw, what does JPopupMenu does in our program? Why do you want to implement this? You can also create it with another JPanel right?

__________________
PHP Code:
System.out.println("Hello World!"); 

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!
Closed Thread


Thread Tools
Display Modes

   Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On



All times are GMT -7. The time now is 01:12 AM. Powered by vBulletin
Copyright © 2000 - 2007, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO © 2007 ProgrammersTalk Sedo - Buy and Sell Domain Names and Websites project info: programmerstalk.net Statistics for project programmerstalk.net etracker® web controlling instead of log file analysis


1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50