ciao a tutti, scusate il disturbo e l'inisperienza. sono qui perchè sono giorni che sto cercando di risolvere questo problema ma non ne vengo fuori.
sto cercando di creare un'applicazione dove in un JFrame vengono creati 6 identici JPanel, disposti in matrice 3x2, con all'interno alcuni bottoni ed etichette, una cosa abbastanza semplice insomma. Il problema nasce nel fatto che questa GUI la vorrei poter utilizzare in diversi dispositivi e schermi, e vorrei quindi dimensionare tutti i pannelli all'interno dei JFrame (quindi tutte le varie JLabel e i JButton) in funzione delle dimensioni "sfruttabili" dello schermo di quel preciso dispositivo.
Ho provato ad utilizzare due strade ma nessuna delle due si è rivelata ottima. All'inizio avevo fatto tutto in funzione di screenSize.width e screenSize.height. Mentre per la larghezza ha funzionato, per l'altezza questo metodo mi restituisce tutta l'altezza dello schermo, compresa la "title bar" del JFrame e la barra di Windows, quindi ovviamente non va bene. Poi ho provato con getMaximumWindowBounds() di GraphicsEnvironment che mi restituisce il rettangolo "sfruttabile", quindi tutto lo schermo esclusa la barra di windows: la "title bar" (e poi anche lo spazio occupato dal JMenu, perchè c'è anche quello) però purtroppo continua a rimanere compresa...
cosa mi consigliate di fare? come potrei riuscire a risalire alle dimensioni dello spazio del JFrame che veramente riesco ad utilizzre?
Aggiungo che utilizzo SetExtendedState(JFrame.MAXIMIZED_BOTH) e setResizable(false) che mi setta il frame full screen senza possibilità di ridimensionare...
Vi prego inoltre di dirmi se ho spiegato male il problema e se magari ho dato per scontato qualcosa che invece sarebbe stato importante che scrivessi.
sto cercando di creare un'applicazione dove in un JFrame vengono creati 6 identici JPanel, disposti in matrice 3x2, con all'interno alcuni bottoni ed etichette, una cosa abbastanza semplice insomma. Il problema nasce nel fatto che questa GUI la vorrei poter utilizzare in diversi dispositivi e schermi, e vorrei quindi dimensionare tutti i pannelli all'interno dei JFrame (quindi tutte le varie JLabel e i JButton) in funzione delle dimensioni "sfruttabili" dello schermo di quel preciso dispositivo.
Ho provato ad utilizzare due strade ma nessuna delle due si è rivelata ottima. All'inizio avevo fatto tutto in funzione di screenSize.width e screenSize.height. Mentre per la larghezza ha funzionato, per l'altezza questo metodo mi restituisce tutta l'altezza dello schermo, compresa la "title bar" del JFrame e la barra di Windows, quindi ovviamente non va bene. Poi ho provato con getMaximumWindowBounds() di GraphicsEnvironment che mi restituisce il rettangolo "sfruttabile", quindi tutto lo schermo esclusa la barra di windows: la "title bar" (e poi anche lo spazio occupato dal JMenu, perchè c'è anche quello) però purtroppo continua a rimanere compresa...
cosa mi consigliate di fare? come potrei riuscire a risalire alle dimensioni dello spazio del JFrame che veramente riesco ad utilizzre?
Aggiungo che utilizzo SetExtendedState(JFrame.MAXIMIZED_BOTH) e setResizable(false) che mi setta il frame full screen senza possibilità di ridimensionare...
Vi prego inoltre di dirmi se ho spiegato male il problema e se magari ho dato per scontato qualcosa che invece sarebbe stato importante che scrivessi.