Я создал класс, как показано ниже. Когда я создаю объект под названием drawpanel этого класса и добавляю его в кадр с помощьюframe.getContentPane().add(BorderLayout.CENTER, drawpanel), я получаю прямоугольник с черным фоном, как и ожидалось. Означает ли это, что this.getWidth и this.getHeight панели по умолчанию имеют одинаковую высоту и ширину фрейма (именно поэтому он заполняет весь фрейм черным цветом)?
Еще один способ переформулировать свой вопрос: если я создаю собственный виджет, расширяя JPanel, и когда создается экземпляр этого пользовательского виджета, какова его высота и ширина по умолчанию?
import java.awt.Color;
import java.awt.Graphics;
import javax.swing.JPanel;
public class MyDrawPanel extends JPanel {
public void paintComponent(Graphics g){
g.fillRect(0, 0, this.getWidth(), this.getHeight());
}
}
Подробнее здесь: https://stackoverflow.com/questions/298 ... -and-width