Java Swing, не может найти цвет в местоположении мыши [дубликат]

Почти все предоставленные ответы требуют полной десериализации JSON в объект Java перед тем, как получить доступ к значению интересующего свойства. Другой альтернативой, которая не идет по этому пути, является использование JsonPATH , который похож на XPath для JSON и позволяет перемещаться по объектам JSON.

Это спецификация и хорошие люди в JayWay создали Java-реализацию для спецификации, которую вы можете найти здесь: https://github.com/jayway/JsonPath

Поэтому, чтобы использовать его, добавьте его в свой проект , например:


    com.jayway.jsonpath
    json-path
    ${version}

и использовать:

String pageName = JsonPath.read(yourJsonString, "$.pageInfo.pageName");
String pagePic = JsonPath.read(yourJsonString, "$.pageInfo.pagePic");
String post_id = JsonPath.read(yourJsonString, "$.pagePosts[0].post_id");

и т. д. ...

Проверьте дополнительную страницу спецификации JsonPath для получения дополнительной информации о других способах к поперечному JSON.

2
задан Java Man 6 March 2014 в 08:51
поделиться

1 ответ

Проблема заключается в том, как вы получаете координаты - e.getX() и e.getY() -, потому что они относятся к JFrame (верхний левый угол JFrame равен (0,0)).

Чтобы получить координаты пикселя, используйте:

public void mouseClicked(MouseEvent e) {
    Point p = e.getLocationOnScreen();

    System.out.println("Pixel:" + p.x + "," + p.y);
    try {
        System.out.println(getPixel(p.x, p.y));
    } catch (AWTException e1) {
        // TODO Auto-generated catch block
        e1.printStackTrace();
    }

}

[Extra] прочитайте это, чтобы улучшить другие вещи: Почему моя мышца отстает, когда я запускаю эту маленькую мышь

1
ответ дан Community 24 August 2018 в 19:00
поделиться
Другие вопросы по тегам:

Похожие вопросы: