Java BoxLayout

Tags:    java

Hej igen kære udviklere! :)

Jeg er ked af at belemre jer med mine problemer igen, da jeg frygter at det kan være et af de her åbenlyse problemer..

Men, jeg har følgende opsætning:

Fold kodeboks ind/udJava kode 


Jeg har bare taget det vigtigste fra mit program, da det er forholdsvist langt..

Mit problem er, at når jeg indsætter et JTextField, så fylder det hele JFramen, hvilket ikke er intentionen. Jeg har endnu ikke kunne finde ud af hvordan jeg laver størrelsen om på JTextField'et. Jeg har prøvet at lave størrelsen om med setSize, setPreferredSize og næsten alle andre tænkelige ting.

Den løsning jeg kom frem til, var at "trykke det hele sammen", og simpelhen tilføje pane.add(Box.createVerticalStrut(300)), så blev textfeltet presset sammen til den størrelse der passede til teksten i boksen... Er der ikke en smartere metode?
Det virker lidt som om jeg ikke har kontrol over layoutet.

Grunden til jeg bruger BoxLayout er, at jeg skal have nogle komponenter til at stå under hinanden..

Nogen forslag?

Mvh
Dennis.

PS. Tak for hjælpen! Er glad for at der er nogle kloge hoveder til at hjælpe! :-)



7 svar postet i denne tråd vises herunder
1 indlæg har modtaget i alt 8 karma
Sorter efter stemmer Sorter efter dato
I mere avancerede applikationer kan du opbygge de forskellige containere med forskellige layouts.

BoxLayout er gode til nogle ting, mens BorderLayout er god til nogle andre opbygninger osv.

En applikation kan således bestå af mange Layouts, som hver enkelt har deres gode egenskab, så jeg syntes ikke at man kan sige at BoxLayout er bedre end nogle af de andre. Det kommer helt an på hvordan man ønsker sin applikation skal se ud :)

Og ja, det var mig der fortalte dig om BoxLayout, men NULL Layoutet var også en løsning, men det kræver lidt mere hard coding, da du også præcist skal definere hvor på din container du ønsker at placere komponenten.



Hej igen.

Jeg har prøvet at lave det igen, helt simpelt, og nu virker det som det skal. Jeg prøver derfor at omskrive hele programmet, tage det bid for bid, og se hvor det fører hen.



så du fik løst problemet?



Hej.

Jeg er begyndt at lave mit program forfra.. Helt fra bunden, små skridt, som jeg skrev.

Jeg har dog fundet ud af, at JTextField stadig var irriterende, og fyldte meget mere end den skulle. Jeg har dog fundet ud af, at man kan putte JTextField'et inden i en box, og boxen tilføjer man så til pane. På box'en kan man sætte setMinimumSize, setPreferredSize og setMaximumSize, og så opfører textfeltet sig pænt :)

Fold kodeboks ind/udJava kode 




Ok :) Dejligt :P



Og tak for hjælpen! - Så vidt jeg husker var det dig der fortalte mig om BoxLayout? :)

Det er et genialt layout. Super nemt at bruge, når man lige får det lært ;)



Korrekt, men jeg har nu heller ikke sagt at det er den bedste, sagde bare at jeg synes BoxLayout var et genialt layout :)

Og ja NULL layout er jo en løsning, men siden det krævede en masse mere og langt dybere kodning, så valgte jeg at prøve kræfter med BoxLayout først, da jeg jo kun er ved at lære Java endnu :)

Og jeg har lige givet dig noget karma på forskellige indlæg, for du har været en rigtig god hjælp, og kommet med nogle dejlig seriøse indlæg! :-)



t