как узнать ширину Border у компонента?
От: alskor  
Дата: 21.03.07 09:29
Оценка:
есть JTabbedPane, добавляем туда JDesktopPane tab с default layout (т.е. NULL).
внутри этого tab хочу показать два internal frames, причем размеры (допустим, горизонтальные) этих internal frames хочу установить такие же, как у JdesktopPane tab.
Если использовать такую схему:
        int maxWidth = tabbedPane.getWidth();
        internalFrame.setSize(maxWidth, height);

то internal frame чуть-чуть не влезает, т.к. ширина должна быть чуть-чуть меньше из-за бордера.
а ширину бордера никак не удается узнать, везде пишется 0:
        System.out.println(tabbedPane.getInsets());
        System.out.println(mainFrame.getInsets());
        System.out.println(desktopPane.getInsets());
--result--
java.awt.Insets[top=0,left=0,bottom=0,right=0]
java.awt.Insets[top=0,left=0,bottom=0,right=0]
java.awt.Insets[top=0,left=0,bottom=0,right=0]

то же самое, если


        System.out.println(desktopPane.getInsets() + " -- " + desktopPane.getSize());
--result--
java.awt.Insets[top=0,left=0,bottom=0,right=0] -- java.awt.Dimension[width=0,height=0]


в общем, везде одни нули.
так как же правильно установить ширину и высоту internal frames с учетом размера JDesktopPane, в котором они лежат?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.