別のクラスの変数を使用することはできません。 は私が送信し、ここでクラスのグラフィッククラスdrawingComponentsここと描くためにそれを使用する異なるクラスの変数を使用する
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class graphics {
\t public static void main(String[] args) {
\t \t
\t \t JFrame frame = new JFrame();
\t \t frame.setSize(640,480);
\t \t frame.setTitle("graphics");
\t \t frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
\t \t frame.setVisible(true);
\t \t
\t \t drawingComponents dc = new drawingComponents();
\t \t frame.add(dc);
\t \t frame.addMouseListener(new MouseAdapter() {
\t \t \t @Override
\t \t \t public void mousePressed(MouseEvent e) {
\t \t \t double mx = MouseInfo.getPointerInfo().getLocation().getX();
\t \t \t double my = MouseInfo.getPointerInfo().getLocation().getY();
\t \t \t System.out.println("Mouse x " + mx + " y " + my); \t
\t \t \t };
\t \t }); \t \t
\t }
}
からMXとのMouseListener()から私を使用しようとしていますマウスの位置で。
import javax.swing.*;
import java.awt.*;
public class drawingComponents extends JComponent{
\t public void paintComponent (Graphics g) {
Graphics2D g2 = (Graphics2D) g;
graphics g3 = new graphics();
\t System.out.println(g3.mx, g3.my);
\t } \t
}
私はMXと私のクラスグラフィックを得ることができますが、クラスdrawingComponentsでをそれを使用することは私にmx/my cannot be resolved or is not a field
を教えてくれます。 クラスdrawingComponentsでは、
double mx;
double my;
としてそれを宣言すると、何も変更されません。
これはJava **のようには見えません** Javascriptではなく、まったく別のプログラミング言語です。 –
私の悪い@ greg-449 – antonio