Как подсказал @JBNizet, макеты null
не работают со всеми компонентами AWT.
Я был сброшен, поскольку мои Panel
были очень хорошо размещены с макетом null
на моем Frame
, тогда как для меток требуется базовая раскладка для отображения.У меня было искушение пойти так далеко, чтобы сказать, что все другие компоненты имеют ту же «особенность», но другая часть моего кода доказала, что эта точка неверна:
// Load Image
Log.v("Loading header image");
_iBG = new ImageIcon("img/hpcount_top_bg.png").getImage();
// Set size
setSize(1024, 152);
setPreferredSize(new Dimension(1024, 152));
// Set position
setLocation(0, 0);
// Set visible
setVisible(true);
// Set layout
setLayout(null);
// Add children
add(new Exit()); // Exit extends java.awt.Button
Код выше (который находится внутри конструкторакласс, расширяющий java.awt.Panel
), работает отлично.
Мой обходной путь - поместить метку внутри другого Panel
с макетом (грязно, но он работает) и расположить эту панель внутри Frame
абсолютно для достижениятот же эффект.