Я работаю над приложением, которое должно быть в состоянии работать как на одном мониторе, так и на нескольких мониторах. В настоящее время я знаю только два подхода к достижению того, что мне нужно, и ни один из них не идеален.
Если я создаю один JFrame для всех мониторов, я могу использовать JInternalFrames для своих подвижных окон. Недостатком является то, что этот подход не будет работать, когда я нахожусь на мониторах другого размера / разрешения, так как панель инструментов или что-то еще, что я добавляю в JFrame, не выстраивается в линию, и у меня может остаться какая-то операционная система, просматривающая все.
Другой подход заключается в создании нового JFrame для каждого графического устройства и использовании JDialogs в качестве моих окон. Недостатком здесь является то, что у меня меньше контроля над JDialogs и я не могу ограничивать движение. В идеале я хотел бы иметь возможность ограничить положение JDialog, чтобы он не мог перекрывать мою панель инструментов.
Есть ли лучшие подходы?