aspose file tools*
The moose likes Swing / AWT / SWT and the fly likes menu with hotkeys in applet  using AWT only Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login


Win a copy of Spring in Action this week in the Spring forum!
JavaRanch » Java Forums » Java » Swing / AWT / SWT
Reply locked New topic
Author

menu with hotkeys in applet using AWT only

Saira Murty
Greenhorn

Joined: Oct 07, 2002
Posts: 13
I want to create a menu with hotkeys in applet using AWT only.
I have 2 frames , the top frame contains the applet(menu).I have used PopupMenu passing MenuShortcut in the conmstructor/calling the setShortcut method of MenuItem. Tho' it displays the short cut key in the PopupMenu( ctrl-C) but does nothing when the shortcut key is pressed.
I have added ActionListener to the MenuItem and it responds to mouseClicks properly.The problem is with the shortcut keys only.I want to use AWT only.
Please give me a viable solution preferably with example
The code is as folls.
import java.awt.*;
import java.applet.*;
import java.awt.event.*;
import netscape.javascript.JSObject;
public class PopupMenuEx extends Applet implements ActionListener{
Button btn1;
Button btn2;

PopupMenu popup;
PopupMenu popup1;
public void init() {
setBackground(Color.white);
MenuItem mi;
popup = new PopupMenu("popup1");

MenuShortcut shortcut = new MenuShortcut(KeyEvent.VK_C,false);
mi = new MenuItem("cut");
mi.setShortcut(shortcut);
popup.add(mi);
mi.addActionListener(this);

mi = new MenuItem("copy");
mi.addActionListener(this);
popup.add(mi);
popup.addSeparator();
mi = new MenuItem("paste");
mi.addActionListener(this);
popup.add(mi);


popup1 = new PopupMenu("popup1");


mi = new MenuItem("view");
mi.addActionListener(this);
popup1.add(mi);

mi = new MenuItem("Update");
mi.addActionListener(this);
popup1.add(mi);
popup1.addSeparator();
mi = new MenuItem("Refresh");
mi.addActionListener(this);
popup1.add(mi);

add(popup); // add popup menu to applet
add(popup1); // add popup menu to applet




btn1 = new Button(" File ");
btn1.addActionListener(this);
btn1.setBackground(Color.decode("#093a80"));
btn1.setForeground(Color.white);
btn1.setFont(new Font("Arial",Font.BOLD,11));
btn2 = new Button(" Edit");
btn2.addActionListener(this);
btn2.setBackground(Color.decode("#093a80"));
btn2.setForeground(Color.white);
btn2.setFont(new Font("Arial",Font.BOLD,11));



add(btn1);
add(new Label(" "));
add(btn2);
add(new Label(" "));


enableEvents(AWTEvent.MOUSE_EVENT_MASK);
enableEvents(AWTEvent.KEY_EVENT_MASK);
resize(200, 200);
}
public void processMouseEvent(MouseEvent e) {
if (e.isPopupTrigger()) {
popup.show(e.getComponent(), e.getX(), e.getY());
//popup.show(button, 20,10);
}
super.processMouseEvent(e);
}
public void actionPerformed(ActionEvent e) {
String command = e.getActionCommand();

if(e.getSource()==btn1)
popup.show(btn1, 0,20);
else if(e.getSource()==btn2)
popup1.show(btn2, 0,20);

if (command.equals("cut")) {
//openJSWindow("hello.htm");

}
}
}
[ October 07, 2002: Message edited by: Saira Murty ]
Cindy Glass
"The Hood"
Sheriff

Joined: Sep 29, 2000
Posts: 8521
Can you show us the code.


"JavaRanch, where the deer and the Certified play" - David O'Meara
Cindy Glass
"The Hood"
Sheriff

Joined: Sep 29, 2000
Posts: 8521
Continue the conversation here.
[ October 08, 2002: Message edited by: Cindy Glass ]
 
I agree. Here's the link: http://aspose.com/file-tools
 
subject: menu with hotkeys in applet using AWT only