Hejsan!
Jag har skapat ett GUI som tyvärr har blivit för stort och svårt att överblicka. Är det någon som vet var man kan hitta info om hur man bryter upp ett GUI i mindre klasser och hur man får de olika klasserna och metoden/erna "actionPerformed" att fungera tillsammans?
Bör man skapa en "actionPerformed"-metod för varje klass eller bör man ha en enda stor?
Jag hande tänkt mig något liknande:
- en klass för fönstret.
- en klass för var och en av de paneler som ska läggas till fönstret.
Är detta en dum idé eller bör jag ha allt i en fil?
MVH Rex
:)
spangoMedlem sedan juni 20008 205 inlägg Det är vanligen så (== jag brukar göra så) att man har en lyssnare för varje händelsegrupp på varje komponent, ex.vis en actionListener för varje knapp.
Hur man delar upp resten är en smaksak. Ska man koda för hand är det vanligen trevligare att göra en klass för varje panel eller så.
BrimbaMedlem sedan dec. 19995 875 inlägg
Ska man koda för hand
Hur kodar man annars menar du?
Hur kodar man annars menar du?
Med grafiska IDE:er av typen dra-och-släpp komponenter och sedan koppla händelser till dessa, antar jag, som t.ex Borland JBuilder eller IBM Visual Age med flera.
LimeMedlem sedan sep. 2001961 inlägg Det du bör tänka på när du börjar dela upp GUI i flera Frames är att ibland måste man kommunicera mellan delarna. Enklast är då att annamma ett synsätt som heter Model-View-Controller (MVC). Det innebär att man har en klass som sköter själva grafiken och grafikuppdateringar men helt saknar programlogik, en ren gui-klass med andra ord. Sedan har man en Model-klass. Det är i denna som man gör allt arbete; kopplar mot databaser, andra modeller, filhantering och sånt. För att få ihop dom och fungera tillsammans så lägger man en Controller i mitten som känner till både View och Model. Det innebär att View aldrig känner till Model och Model aldrig känner till View utan Controllern sköter all kommunikation däremellan.
Fördelen med det är att man kan variera GUIt i all oändlighet utan att behöva pilla på logiken i Modellen.
http://java.sun.com/blueprints/patterns/MVC-detailed.html beskriver lite onödigt detaljerat detta mönster. Jag rekommenderar att ni som hackar lite mera proffetionellt kollar in Java-patterns. Man sparar mycket tid på det.
/Lime
Tack Spango och Lime för svaren!
Mitt problem är att jag inte vet hur jag ska dela upp ett GUI. Jag skulle behöva en artikel, tutorial eller några enkla kodexempel (som beskriver det grundligt) att titta på. Har tittat på JDK's swing-demoexempel, men de är lite för komplicerade för mig.
Det skulle vara kanon om någon visste vart jag skulle kunna hitta något av detta!
MVH Rex
:)