Reputation: 558
I made a program using several JFrames on a Mac, and the resolution was okay, everything fit the screen properly. But when I run the program on my PC the JFrames are way too large and go right off the screen.
My question is: Is it possible to set the universal resolution on a JFrame so that all the components are drawn a little smaller? I would rather do that then go through the entire program and resize every component manually.
Upvotes: 3
Views: 1614
Reputation: 2055
I had encountered a problem like your's and I solved it with a JScrollbar! Here is how to make your JFrame scrollable.
Upvotes: 0
Reputation: 109815
I made a program using several JFrames
wrong use CardLayout instead, only if is there real reason use JDialog or JOptionPane with parent and (JDialog) maybe with setModal(true) to the single JFrame
But when I run the program on my PC the JFrames are way too large and go right off the screen
are you using AbsoluteLayout
is your PC somehow specific
every Native OS returns different (for example there you cann't find out two containers with the same pixels ratio on the screen) Font and default Size for JComponents
Is it possible to set the universal resolution on a JFrame so that all the components are drawn a little smaller?
use proper LayoutManager, sure not easy job, required real effort
I would rather do that then go through the entire program and resize every component manually.
use proper LayoutManager,
Upvotes: 5
Reputation: 31605
As far as I know you can't change the resolution of Swing components. But you can get the current screen size from the system (here's an example). With this screen size you can adjust your components.
If you are coding your GUI wisely, you wouldn't have to resize all your components of your GUI manually. Instead, a top-level JPanel (or JFrame or what ever) will adjust its size due to its contained components (e.g. with something like pack()). So only a few components will have a hard coded size. This size could also be externalized into a class or a file that is easy to edit.
Upvotes: 4