Java: Как получить значение за пределами MouseAdapter? - PullRequest
0 голосов
/ 04 апреля 2020

Я пытаюсь получить значение вне MouseAdapter. Как мне это сделать?

Object[] allTabels = getTables();


JButton[] buttonAry = new JButton[allTabels.length];

for(int x  = 0; x < buttonAry.length; x++) {

    buttonAry[x].setText((String)allTabels[x]);
    buttonAry[x].setBounds(0, 0, 125, 50);
    buttonAry[x].addMouseListener(new MouseAdapter() {
        @Override
        public void mousePressed(MouseEvent e) {
             displayTable(buttonAry[x].getText());
        }
    });

}

Я нашел ответ. Мне просто нужен последний int, чтобы все заработало. поэтому я только что сделал один.

Object[] allTabels = getTables();


JButton[] buttonAry = new JButton[allTabels.length];

for(int x  = 0; x < buttonAry.length; x++) {

    buttonAry[x].setText((String)allTabels[x]);
    buttonAry[x].setBounds(0, 0, 125, 50);
    final int y = x;
    buttonAry[x].addMouseListener(new MouseAdapter() {
        @Override
        public void mousePressed(MouseEvent e) {
             displayTable(buttonAry[y].getText());
        }
    });

}

1 Ответ

1 голос
/ 04 апреля 2020
import java.awt.Point;
import java.awt.MouseInfo;

public class MouseTest
{
 public static void main(String args[])
 {
  Point location=MouseInfo.getPointerInfo().getLocation();
  System.out.println(location.x);
  System.out.println(location.y);
 }
}
...