我需要在JDialog中加入一个ImageEditor。它必须在
上执行int k = JOptionPane.showOptionDialog(null, p, t, JOptionPane.YES_NO_OPTION,
JOptionPane.PLAIN_MESSAGE, null, new Object[]{ok, cancel}, ok);
创建小组:
case TEXEDIT:
panel = new IPanel();
p.setPreferredSize(new Dimension(800, 480));
panel.setPreferredSize(new Dimension(780, 440));
break;
其班级:
static class IPanel extends JPanel {
BufferedImage image;
public IPanel() {
super();
try {
image = ImageIO.read(new File("res/shipRubeoAles.png"));
} catch (IOException e) {
e.printStackTrace();
}
}
float scale = 2.0f;
public void paintComponent(Graphics g) {
Graphics2D g2 = (Graphics2D)g;
int w = getWidth();
int h = getHeight();
int imageWidth = image.getWidth();
int imageHeight = image.getHeight();
double x = (w - scale * imageWidth)/2;
double y = (h - scale * imageHeight)/2;
AffineTransform at = AffineTransform.getTranslateInstance(x,y);
at.scale(scale, scale);
g2.drawRenderedImage(image, at);
}
}
它应该是一个“图像选择器(裁剪器)”,我想在那里定义该对象的绘图矩形(在spritesheet上)。
我想在图像编辑器打开时停止所有其他应用程序活动。 但是出现了一些问题,我不想停止听鼠标,键盘事件或重新绘制我的面板(它明确地停止,因为我的面板根本没有重新绘制,它甚至没有第一次绘制图像,所以面板在JDialog里面是完全空白的,那么如何做到这一点JDialog会听这些事件?