Мое приложение богато JPanels и другими компонентами Swing, которые отображают что-то. Я бы хотел, чтобы размер этих JComponents был независим от размера экрана, такого как мой графический интерфейс, будет в порядке при разном разрешении. Я думал, что сделать что-то подобное в моем кодеРазмер JComponent независимо от размера экрана
public class myPanel extends JPanel {
//constructors and other useful methods
@Override
public Dimension getPreferredSize() {
Dimension screen_size=Toolkit.getDefaultToolkit().getScreenSize();
return new Dimension (0.50*screen_size.width, 0.30*screen_size.height); }
В двух словах, дать измерение к JPanel в процентах от размера экрана. Это хорошо? Существует не быстрый способ? Потому что я должен это делать для каждого используемого JComponent. Что мне делать? PS: Предположим, что я использую макеты диспетчера, соблюдающие предпочтительный размер.
Что случилось с вашим решением? И что вы подразумеваете под «быстрым» - короткое время выполнения или короткое время кодирования? – MyPasswordIsLasercats
AFAIK предпочтительным способом было бы использовать менеджеров компоновки и позволить им определять размер ваших компонентов. Размер экрана просто повлияет на размер окна, и менеджеры макетов будут распространять это на все компоненты. Если вы не можете делать то, что хотите, со встроенными менеджерами макетов, посмотрите на сторонние библиотеки, такие как [MigLayout] (http://www.miglayout.com/), где вы могли бы определить свою панель, чтобы занять 50% ширина окна и 30% его высоты. – Thomas