Вы переопределяете painGraphics()
в gfix
классе, поэтому добавьте gfix
объект класса в ваш кадр, а не Java при условии JPanel
объект класса.
gfix gg=new gfix();
JFrame frame = new JFrame("RISK");
frame.setSize(800, 600);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//JPanel panel = new JPanel(); Not needed
//panel.setLayout(null);
frame.add(gg);
JButton button = new JButton("test");
button.setBounds(100, 100, 150, 150);
gg.add(button);
frame.setVisible(true);
для g.fillRect(80, 100, 150, 75);
дают правильное значение границы панели, чтобы заполнить полный фон панели. ИЛИ используйте int width = getWidth();
int height = getHeight();
в paintGraphics, чтобы получить фактическую высоту и ширину.