Непонятные размеры фрейма и панелей - Java

Узнай цену своей работы

Формулировка задачи:

Всем привет. Возникла такая вот проблема: графические приложения пишу не давно, пользуюсь абсолютным позиционированием компонентов (до Layout manager пока не дорос), и заметил такой баг, все компоненты фрема смещены пикселей на 5-6 (иногда вправо, иногда влево). Раньше я забивал на это и думал, что где-то я накосячил, но потом решил все таки проверить. Создал пустой фрейм и повесил на него обработчик клика кнопки:
import javax.swing.*;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
 
public class Frame extends JFrame {
 
    public void createFrame(){
 
        this.setSize(500,500);
        this.setLocationRelativeTo(null);
        this.setTitle("Test GUI");
        this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        this.setVisible(true);
        this.addMouseListener(new MouseAdapter() {
            @Override
            public void mouseClicked(MouseEvent e) {
                System.out.println("X:"+e.getX()+" Y:"+e.getY());
            }
        });
    }
}
В результате оказалось, что в верхнем левом углы координаты не 0;0, а 8;30. Причем, если использовать undecoratedframe - все в порядке)) Все это делалось на windows 7, java 1.8 В чем проблема???

Решение задачи: «Непонятные размеры фрейма и панелей»

textual
Листинг программы
this.getContentPane().addMou.....

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

11   голосов , оценка 3.545 из 5