Добавление окна сообщения поверх панели рисования - PullRequest
0 голосов
/ 01 мая 2020

У меня есть этот код ниже, этот класс расширяет JPanel и получает некоторые параметры из своего конструктора и строки dr aws над загруженным изображением.

 @Override
public void paint(Graphics g) {
    super.paint(g);

    Stroke stroke = new BasicStroke(4f);
    Graphics2D g2d = (Graphics2D) g;

    g2d.drawImage(image,0,0,image.getWidth() * 3 / 5,image.getHeight() * 3 / 5,this);
    g2d.setStroke(stroke);

    for (int i=0; i<pathler.size(); i++){
        for (int j=0; j<pathler.get(i).size() - 1; j++) {
            g2d.drawLine(pathler.get(i).get(j).getX(),pathler.get(i).get(j).getY(),pathler.get(i).get(j+1).getX(),pathler.get(i).get(j+1).getY());
        }

    }
    for (int i=0; i<lastpath.size() - 1; i++){
        g2d.drawLine(lastpath.get(i).getX(),lastpath.get(i).getY(),lastpath.get(i+1).getX(),lastpath.get(i+1).getY());
    }


}

И я использую этот код ниже, чтобы вызвать его на главной;

    Main jf = new Main("App");
    jf.setSize(1500,800);
    jf.setDefaultCloseOperation(EXIT_ON_CLOSE);
    Gui gui = new Gui(nodes,path,path3);
    jf.add(gui);
    jf.setVisible(true);

И все, что я хочу, это небольшая рамка над этой картинкой, когда я ее запустю, она покажет мои пути (я напишу их, содержимое коробки не имеет значения) и пользователь может нажать OK или в правом верхнем углу окна, чтобы закрыть его, не проблема сделать его перетаскиваемым или нет. Я не знаком с макетами, панелями и т. Д. c, поэтому не могу понять. На самом деле это просто простое окно, например, когда вы получаете сообщение об ошибке на компьютере (или на панели или в окне сообщения, не знаю, как его точно назвать). Мне нужна помощь для этого.

...