17. august 2001 - 00:17Der er
7 kommentarer og 1 løsning
Ændring af look & feel i java awt
Jeg er igang med at skrive et lille spil i java, hvor jeg MEGET gerne ville kunne bruge de fleste af awt\'s komponenter (deres funktionalitet), dog med et helt andet design..! Indtil videre har jeg måttet klare mig med at lave mine egne komponenter, men da det er en applet der skal downloades (og da de på sun allerede har lavet nogle fine komponenter) kunne jeg meget godt tænke mig at kunne bruge fx en knap´med et billede i stedet for??? Jeg ved at det er muligt at ændre i det såkaldte java look & feel, men jeg har ikke kunnet finde ud af hvordan? Jeg ville være meget glad hvis der er en derude der kunne fortælle mig hvordan?
Den moderne arbejdsplads er i stigende grad afhængig af mødelokaler til at fremme samarbejde, men dette skift medfører også stigende sikkerhedsudfordringer.
Du bruger ikke awt komponenter, men Swing komponenter, hvis du vil have de mere udvidede komponenter. Det er dem, der starter med J.. og ligger i pakken javax.swing.*;
Lav f.eks. en button med image således:
JButton b = new JButton(new ImageIcon(\"c:/image.jpg\"));
lige et sidespørgsmål, hvis man f.eks. laver en JButton med et billede, compiler Java så billedet med i koden, eller skal man selv smide billedet med når man distrubuerer programmet?
Du skal selv lægge det ved, men hvis du bundler det i en jar fil, er det nemmest at hente med:
URL iconURL = ClassLoader.getSystemResource(relativePathToFile); if (iconURL != null) // If we found it bundled, use it. icon = new ImageIcon(iconURL);
Mit problem er at langt fra alle browsere understøtter swing-klasserne. Den \"look&feel\" jeg taler om er den der gør at fx knapper er forskellige i windows og linux! Jeg ved at det er muligt at lave sin egen \"stil\" på samme plan som linux-stilen og windows-stilen. Grunden til at jeg ikke bare kan bruge extensions af java.awt.Component er at jeg så skulle skrive hele bunken af komponenter om (hvilket jeg er godt igang med!), da jeg skal bruge mange af dem! Desuden er det forfærdeligt avanceret at skrive en klasse som List... :-)
Men, det er muligt at embedde java som en plug-in i browseren (og derved bliver det så understøttet), hvilket giver dig de muligheder, men hvis det ikke hjælper dig, kan jeg kun tilføje, at awt bygger på tanken om en native peer component til hver java komponent, så en Button har en native Button-Peer, som indeholder platformens generelle måde at vise en knap. Andet \"look&feel\" til AWT har jeg aldrig hørt om.
Du kan dog sagtens hente alle swing klasserne, og anvende dem i din kode, hvis du ellers bundler dem. Folkene har jo trods alt ulejliget sig med at omskrive klasser som List :-)
Yep, men det var det swing, som kezzelski absolut ikke ville bruge :-)
Synes godt om
Ny brugerNybegynder
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.