Gå til innhold

Bestemme hvor plass en Component skal få!


Anbefalte innlegg

Hei.

 

Lurte på hvordan jeg kan bestemme hvor stor plass en Component, f. eks. en JButton skal få i et JPanel. Legger en JButton inn i en Container sammen med en Tabell jeg har laget, men Tabellen blir da avskjært så jeg kun ser de 4 rutene øverst til venstre, da jeg øker størelsen på JPanelet øker rett og slett JButton componenten til å bli gigantisk. Da jeg minker størelsen på JButtonen blir det masse tomrom mellom tabellen og knappen.

 

Noen som kan si meg hvordan jeg bestemmer nøyaktig hvor stor plass en component skal få i ett JPanel?

Lenke til kommentar
Videoannonse
Annonse

Hmmm... Den ville visst ikke helt :S

 

Har ett egenlagd SudokuBrett som extender en JPanel, dette tegner 9 * 9 rectangler.

 

Problemet er at da jeg legger ett Objekt av ett SudokuBrett inn i en Container i en anna klasse vises bare litt av brettet, og jeg må dra på ramma for å få sett hele brettet.

Lenke til kommentar

Jeg liker å bruke (Container samling):

setSize(100,100) //Inkluderer rammen rundt vinduet

samling.setLayout(null); //Merk!

JButton enKnapp = new JButton("Liten knapp");

//setBounds(xstart-koordinat, ystart.koordinat, antall piksler bortover (altså til punktet xstart-koordinat+antallpiksler bortover), antall piksler nedover)

enKnapp.setBounds(20,20,60,30)

samling.add(enKnapp);

setVisible(true);

 

Lykke til på obligen! :)

Lenke til kommentar

Bare hyggelig! :)

 

Layouten settes til null for at en Layout-manager ikke skal kunne overstyre setBounds-kommandoen. Dersom du f.eks. ikke hadde satt layouten i koden over og var i en JFrame, altså med BorderLayout, ville knappen strekt seg over hele bildet. Ingen layout gir deg selv total kontroll på plasseringen og størrelsen, med den ulempen at du selv må forsikre deg om at komponenter ikke (uønsket) kommer opppå hverandre og du må bruke setBounds på alle komponentene (der en komponent selvfølgelig kan være f.eks. en JPanel med GridLayout).

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...