Avatar billede dennispc Nybegynder
18. september 2003 - 17:37 Der er 10 kommentarer og
1 løsning

Fra SWING til AWT i applet

Jeg har lavet en applet primært i swing, men selvfølgelig kræver det SUN´s plugin for at kunne kører...

Jeg er derfor ved at eksperimenterer med at holde det 100% i AWT.

mit problem er metoden " setPreferedSize( ) " som jeg f.eks bruger på mine jPanels. Uden denne metode vil alle mine panels blive tilpasset indholdet af dem og det er jeg ikke interesseret i.

hvad er alternativet når det skal gøret på et alm. panel - for her er ingen sådan metode i AWT??

- er det evt. nødvendigt med et andet layout - jeg bruger primært flow og border layout.
Avatar billede a_eriksen Nybegynder
18. september 2003 - 17:42 #1
setSize(int, int), måske
Avatar billede mikkelbm Nybegynder
18. september 2003 - 17:44 #2
Kan du ikke bruge følgende:

Panel panel = new Panel();
panel.setBounds(new Rectangle(x,y,width,height));
Avatar billede mikkelbm Nybegynder
18. september 2003 - 17:45 #3
Men jeg mener desværre at det kræver et null-layout. Kan ikke helt huske det...
Avatar billede mikkelbm Nybegynder
18. september 2003 - 17:46 #4
Måske det her var bedre:

Panel pan = new Panel();
pan.setSize(new Dimension(width, height));
Avatar billede dennispc Nybegynder
18. september 2003 - 17:58 #5
setSize( ) kan ikke umiddelbart bruges.... ikke med setSize(100,300), men gør det nogen forskel at putte en Dimension i ?

Jeg vil lige teste med setBounds( )
Avatar billede =maddog= Nybegynder
18. september 2003 - 18:42 #6
setBounds sætter både størrelse og koordinater, men kan kolidere med layoutmanegers. måske en underklasse af Panel, hvor du selv definerer setPreferredSize?
Avatar billede dennispc Nybegynder
18. september 2003 - 18:53 #7
maddog - kan du evt. uddybe eller give et lille eks med underklasse af panel med setPreferredSize ???

- jeg forstår ikke helt hvad du mener..........
Avatar billede =maddog= Nybegynder
18. september 2003 - 18:59 #8
import java.awt.*;
public class MyPanel extends Panel {
   
    Dimension size;
    public MyPanel() {super();}   
   
    public Dimension getMinimumSize() { return size; }
    public Dimension getPreferredSize() { return size; }
    public void setPreferredSize(Dimension dim) { size=dim; }
}
agtigt. er ikke sikker på hvor skarp den er. der mangler f.x. sanity-checks o.s.v. De forsk. metoder getXXXSize() bruges af LayoutManager'en til at bestemme størrelsen af komponenten.
Avatar billede dennispc Nybegynder
18. september 2003 - 19:19 #9
maddog - det var løsningen !

nu kan jeg kalde setPreferredSize() på min panels og de håndteres nu korrekt af LayoutManageren !

kast lige et svar så du kan få nogle points !
Avatar billede dennispc Nybegynder
02. januar 2004 - 14:30 #10
maddog ! kast lige et svar så jeg kan få lukket mit spg.
Avatar billede dennispc Nybegynder
31. oktober 2004 - 19:25 #11
lukker spg
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