【发布时间】:2012-04-23 20:33:11
【问题描述】:
问题是: 我的 jpanel.(MyJPanel) 在鼠标右键单击时触发。当我按下它时,它会显示带有“预览”项的弹出菜单。
我想在按“预览”后显示 JFrame,但我不知道如何显示 jpanel 的内容,因为 preview(jmenuitem) 的 actionlistener 在 MyJpanel 中。
public MyJPanel(String s,int i){
addMouseListener(new PopupTrigger());
JPanel obh = new JPanel();
number = i;
picture = new ImageIcon(s);
preview = new JMenuItem("Preview");
preview.addActionListener(
new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
JFrame f = new JFrame("Preview window");
f.setSize(csizeX/2,csizeY/2);
f.setVisible(true);
}
}
);
menu.add(preview);
}
如何设置jframe f的内容显示MyJPanel?(PopupTrigger扩展了MouseAdapter,它是MyJPanel的内部类)
【问题讨论】:
-
picture = new ImageIcon(s);假定s是文件路径。该图像是嵌入式应用程序资源,还是由用户提供?为了尽快获得更好的帮助,请发帖SSCCE。 -
我从
File f = fileChooser.getSelectedFile()f.getAbsolutePath得到s