Domanda

Ho un JDialog che contiene una serie di JPanels in un CardLayout . Alcuni di questi pannelli contengono JTables che vorrei ridimensionare in linea con qualsiasi ridimensionamento di JDialog . Non sono sicuro di come raggiungere questo obiettivo e qualsiasi aiuto sarebbe molto apprezzato.

Al momento le tabelle rimangono semplicemente le loro dimensioni attuali e non si ridimensionano. Sono sicuro che sia qualcosa di semplice, ma ho problemi a individuare l'approccio esatto necessario.

Molte grazie in anticipo. Fornirò ulteriori informazioni se necessario.

modifica: JDialog viene utilizzato come procedura guidata, quindi viene visualizzato solo uno dei pannelli alla volta, quindi l'utilizzo di CardLayout . Vorrei idealmente che questo sia il layout manager, anche se se è la fonte dei problemi, allora ovviamente ripenserei!

È stato utile?

Soluzione

Puoi mantenere CardLayout, ma devi fare quanto segue: 1. imposta il layout del tuo JDialog su BorderLayout e aggiungi un nuovo JPanel ( contentPanel ) al JDialog
2. ora imposta questo layout contentPanel su CardLayout
3. aggiungi gli altri pannelli al cardlayout come richiesto.
4. Assicurati anche dei layout che utilizzi su ciascuno dei pannelli che stai aggiungendo a CardLayout. Per impostazione predefinita, JPanel utilizza FlowLayout, penso, e questo non è l'ideale per una JTable. Quindi potrebbe essere necessario giocare con il layout del pannello contenente anche il tavolo; prova anche BoxLayout o BorderLayout.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top