Avatar billede jbh Nybegynder
28. marts 2003 - 13:47 Der er 10 kommentarer og
1 løsning

Opdatering af Panel baggrund

Hejsa

Jeg har en metode, der ændrer på nogle knapper i et Panel (fjerner de eksisterende og indsætter nogle nye). Lidt pseudokode:

// Nyt Panel skabes og gemmes i en member-variabel i klassen.
Private java.awt.Panel buttonsPanel = new Panel();

buttonsPanel.removeAll();

while (<en betingelse>) {

  Button but = new Button(name);
  buttonsPanel.add(but);

}

buttonsPanel.validate();

Problemet er at baggrunden af Panel'et ikke opdateres ved kald af buttonsPanel.validate(), hvilket bevirker at man stadig kan se de gamle knapper - indtil man flytter med musen eller noget lignende.
Avatar billede viht Nybegynder
28. marts 2003 - 16:05 #1
Hvorfor bruger du AWT button og ikke Swing JButton?
Avatar billede =maddog= Nybegynder
28. marts 2003 - 16:58 #2
du skal bruge en button der er sub-klasse af java.awt.Component, men ikke java.awt.Button. Hvis du laver det i AWT skal du altså selv lave en Button der forlænger java.awt.Button. Alternativt bruge Swing
Avatar billede viht Nybegynder
28. marts 2003 - 17:05 #3
AWT komponenter er stenalder, brug Swing og du slipper for repaint helvedet.
Avatar billede =maddog= Nybegynder
28. marts 2003 - 17:30 #4
Hvis det er en applikation skal du bruge Swing (selvklart), men jeg undres over om det mon er en applet, der skal kunne køre uden downloadet JVM?
Avatar billede jbh Nybegynder
28. marts 2003 - 18:10 #5
Det ér en applet, der skal kunne køre uden download af jvm - derfor awt. Men man må da kunne få Panel'et til at clear'e sin baggrund, for den gør det jo selv når man bevæger musen hen over det. Kan man ikke clear'e baggrunden manuelt så?
Avatar billede =maddog= Nybegynder
28. marts 2003 - 18:13 #6
jeg skal lige være med. vil du have et Panel, der ikke er opaque? Altså der tillader gennemsigtige pixels? Jeg er ikke helt sikker på jeg er med desværre.
Avatar billede jbh Nybegynder
29. marts 2003 - 01:30 #7
Ikke noget med at undskylde her :-)

Ok, et Panel er åbentbart per default gennemsigtigt, så når jeg udskifter de gamle knapper med nogle nye, så kan man stadig se de gamle fordi baggrunden ikke er blevet slettet. Så det jeg egentlig eftelyser er en måde at slette beggrunden på i det Panel, jeg indsætter mine knapper i.
Avatar billede jbh Nybegynder
29. marts 2003 - 02:02 #8
Forresten =maddog=, min button er en java.awt.Button. Alt er AWT da det som sagt er en applet, der skal kunne køre i alle browsere uden download af diverse extra libs. På mac, unix, windows, etc.
Avatar billede =maddog= Nybegynder
29. marts 2003 - 04:05 #9
noget i retning af det her?
www.dsr.kvl.dk/~maddog/Exp334465.java
bare kompile og kør og sig om det er på sporet. Hvis det er så prøv med LWButton fra denne fil i stedet for Button.
Avatar billede jbh Nybegynder
31. marts 2003 - 15:54 #10
Jepper!

Noget i retningen af det der. :-)
Maddog, hvis du vil have de 30 point, så...
Avatar billede =maddog= Nybegynder
31. marts 2003 - 22:58 #11
ok
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