hi
möchte in diesem prog popups machen
das geht auch aber jedes mal wenn ich rechtsklicke wird der davorige text dazugeaddet, also in diesem Fall "Open"
pls help
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import javax.swing.JFrame;
import javax.swing.JMenuItem;
import javax.swing.JPopupMenu;
public class PopupTest {
JPopupMenu menu = new JPopupMenu();
public static void main(String[] args) {
new PopupTest();
}
public PopupTest() {
final JFrame window = new JFrame();
window.setSize(800, 600);
window.setVisible(true);
window.addMouseListener(new MouseAdapter(){
public void mousePressed(MouseEvent event){
window.addMouseListener(new PopupListener());
JMenuItem menuItem = new JMenuItem("Open");
menu.add(menuItem);
}
});
}
private class PopupListener extends MouseAdapter{
public void mousePressed(MouseEvent e){
displayPopup(e);
}
public void mouseReleased(MouseEvent e){
displayPopup(e);
}
public void displayPopup(MouseEvent e){
if(e.isPopupTrigger()){
menu.show(e.getComponent(), e.getX(), e.getY());
}
}
}
}
möchte in diesem prog popups machen
das geht auch aber jedes mal wenn ich rechtsklicke wird der davorige text dazugeaddet, also in diesem Fall "Open"
pls help
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import javax.swing.JFrame;
import javax.swing.JMenuItem;
import javax.swing.JPopupMenu;
public class PopupTest {
JPopupMenu menu = new JPopupMenu();
public static void main(String[] args) {
new PopupTest();
}
public PopupTest() {
final JFrame window = new JFrame();
window.setSize(800, 600);
window.setVisible(true);
window.addMouseListener(new MouseAdapter(){
public void mousePressed(MouseEvent event){
window.addMouseListener(new PopupListener());
JMenuItem menuItem = new JMenuItem("Open");
menu.add(menuItem);
}
});
}
private class PopupListener extends MouseAdapter{
public void mousePressed(MouseEvent e){
displayPopup(e);
}
public void mouseReleased(MouseEvent e){
displayPopup(e);
}
public void displayPopup(MouseEvent e){
if(e.isPopupTrigger()){
menu.show(e.getComponent(), e.getX(), e.getY());
}
}
}
}