私は 2 を持っています。それぞれJPanels
に独自のクラスがあり、Jpanel
それぞれがjDialog
. クラスの1つにクリックイベントを配置し、クリックが発生した時点で色を取得します。JPanel
では、2 番目に自分自身を再描画するように指示するにはどうすればよいでしょうか。
私のjDialogのコンストラクタ:
public ColorPickerDialog(java.awt.Frame parent, boolean modal){
super(parent, modal);
initComponents();
cpp = new ColorPicker();
cpp.setBounds(5, 5, 300, 300);
cpp.setVisible(true);
cpp.setOpaque(true);
cpp.setBorder(BorderFactory.createBevelBorder(BevelBorder.LOWERED));
add(cpp);
// Click event is in this class:
ColorSlider colorSlide = new ColorSlider();
colorSlide.setBounds(315, 5, 20, 300);
colorSlide.setVisible(true);
colorSlide.setOpaque(true);
colorSlide.setBorder(BorderFactory.createBevelBorder(BevelBorder.LOWERED));
add(colorSlide);
}
マイ クリック イベント:
public void mouseClick(MouseEvent evt){
Point pt = evt.getPoint();
BufferedImage img = (BufferedImage)this.createImage(getWidth(), getHeight());
int[] colors = new int[3];
img.getRaster().getPixel(evt.getX(), evt.getY(), colors);
ColorPickerDialog.sldColor = new Color(colors[0], colors[1], colors[2]);
}