19. august 2004 - 16:32Der er
2 kommentarer og 1 løsning
Panel dukker først op efter pack()
Hej, Jeg har et JFrame hvori jeg add'er et enkelt JPanel. Jeg ønsker så at fjerne dette panel og indsætte et andet istedet. Dette gør jeg således:
remove(startpanel); repaint();
this.getContentPane().add(sgpanel);
Startpanel'elet bliver fjernet og baggrundsfarven på JFrame'et kommer frem, dog bliver sgpanelet ikke add'et.
Hvis jeg indsætter metoden pack() efter den sidste linje så kommer sgpanelet frem, dog ændrer Frame'et herved størrelse og elementerne ændrer placering.
I lang tid har samarbejdsbranchen fokuseret på at forbedre enhedsfunktioner – bedre kameraer, klarere lyd og smartere software. Men den virkelige forvandling handler ikke om funktioner.
validate(), gør det, at det validerer dit layout efter du addet en komponent, i den situation er repaint() overflødig, da det er dit layout som skal bokses på plads igen
pack(), gør det (samme), dog væsentlig mere udvidet, idet pack() validerer hele din GUI med ALT hvad den indeholder, incl. JFrame, og du er kun interesseret i at få valideret dit layout - derfor validate().
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.