Avatar billede joki Mester
21. januar 2005 - 23:14 Der er 8 kommentarer og
1 løsning

Hvorfor virker setLocation ikke

Hej

Jeg forsøger at flytte et textfield ved hjælp af metoden setLokation, men alle felter sættes i toppen af formen. Compileren melder ingen fejl, så hvad kan jeg gøre galt ?

textfield.setLocation (100, 200);
Avatar billede kalp Novice
21. januar 2005 - 23:52 #1
Lige et spørgsmål.. hvordan flytte den? er den placeret i når programmet kører skal den så flyttes?
Avatar billede kalp Novice
21. januar 2005 - 23:58 #2
metoden ser du ud til at anvende rigtigt.. måske vi har brug for at se lidt kode.. men sikre dig at det er textfield som du prøver at flytte
Avatar billede arne_v Ekspert
22. januar 2005 - 09:27 #3
Bruger du layout manager ?
Avatar billede mikkelbm Nybegynder
22. januar 2005 - 11:11 #4
Som Arne påpeger, kan du kun bruge setlocation, hvis du ikke har tilføjet en LayoutManager. Som default har en JFrame BorderLayout og et JPanel har FlowLayout.

Alternativet er at bruge null-layout, hvilket dog bevirker at du skal sætte størrelse og position på alle dine elementer i den komponent.

Et andet alternativ er, at finde en LayoutManager der understøtter det at sætte koordinater - jeg mener GridBagLayout kan gøre det:
http://java.sun.com/docs/books/tutorial/uiswing/layout/gridbag.html

Ellers ta' et kig her:
http://java.sun.com/docs/books/tutorial/uiswing/layout/using.html
Avatar billede _carsten Nybegynder
22. januar 2005 - 11:20 #5
En lille sidebemærkning.

Kun setLayout(null) duer i forbindelse med setLocation(), når vi snakker komponenter a la JTextField, JLabel etc, ellers styres disse komponenters placering/layout af den anvendte LayoutManager (setLocation() kan ikke anvendes i GridBagLayout på JTextField, JLabel etc)
Avatar billede mikkelbm Nybegynder
22. januar 2005 - 11:26 #6
carsten>>

Ja, det er rigtigt. Det jeg tænkte på med GridBagLayout var at man via den kunne styre placeringen af sine komponenter.
Avatar billede _carsten Nybegynder
22. januar 2005 - 11:29 #7
OK :)
Avatar billede joki Mester
22. januar 2005 - 17:00 #8
mikkelbm >>

Jeg fandt ud af at bruge GridbagLayout, så smid et svar så takker jeg for hjælpen med lidt point.
Avatar billede mikkelbm Nybegynder
22. januar 2005 - 17:18 #9
Svar :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester