christomar Δημοσ. 15 Απριλίου 2007 Δημοσ. 15 Απριλίου 2007 Γεια σας παιδιά.Έχω μια άσκηση όπου έχω 2 frames.Αρχικά δίνω δεδομένα στο πρώτο και περνάω στο 2ο.Μετά δίνω δεδομένα και στο πρώτο και πρέπει κάποια απ'αυτά τα δεδομένα να επιστραφούν και να γραφτούν στο 2ο frame. Μπορείτε να μου πείτε αρχικά θα κάνω δύο κλάσεις ξεχωριστά για κάθε frame αφού το κάθε ένα θα έχει διαφορετικά στοιχεία μέσα ή υπάρχει τρόπος να κάνω μία κλάση?Κι αν κάνω δύο,η paint σε ποια από τις δύο θα μπει και πώς θα δηλωθεί?Ευχαριστώ προκαταβολικά!
Bspus Δημοσ. 15 Απριλίου 2007 Δημοσ. 15 Απριλίου 2007 Θα πρεπει να φτιαξεις κλαση για το καθε Frame σιγουρα, εκτος αν τα 2 frames ειναι πανομοιοτυπα και μπορουν να ειναι 2 διαφορετικα objects της ιδιας κλασης. Απο κει και περα Μπορεις να φτιαξεις μια ακομα κλαση που να εχει ως attributes τα 2 αυτα Frames, ή να φτιαξεις πρωτα ενα Frame και μεσα απο αυτο να φτιαξεις το αλλο, περνωντας ομως ως παραμετρο ολοκληρο το αρχικο Frame. Για να γινει αυτο πρεπει να εχεις ορισει τον constructor του δευτερου frame αναλογως. Μετα ομως οτι δεδομενα γραφτουν στο πρωτο frame θα ειναι προσβασιμα στο δευτερο αμα φτιαξεις τις αντιστοιχες public (η package private αν τα βαλεις σε package) μεθοδους τυπου get
christomar Δημοσ. 15 Απριλίου 2007 Μέλος Δημοσ. 15 Απριλίου 2007 Εγώ βασικά το έχω φτιάξει με δύο κλάσεις ξεχωριστές γιατί τα 2 frames έχουν τελείως διαφορετικά στοιχεία και επειδή είναι applet εφαρμογή πρέπει όταν πατιέται ένα κουμπί του 2ου frame (με action listener) να εμφανίζονται τα δεδομένα στο 1ο frame.Εγώ εκτός από τη μέθοδο paint δεν ξέρω άλλο τρόπο να γίνει αυτό,απλά δεν ξέρω σε ποια από τις δύο κλάσεις βάζουμε την paint και αντίστοιχα τη repaint() που θα την καλεί και με ποιον τρόπο,επειδή το έχω δοκιμάσει και στις δύο κλάσεις και δε μου εμφανίζονται.
Bspus Δημοσ. 15 Απριλίου 2007 Δημοσ. 15 Απριλίου 2007 Α εγω σκεφτομουνα standalone swing εφαρμογες και JFrames. Δεν εχω ασχοληθει καθολου με applets δυστυχως. Η λογικη ομως δεν νομιζω οτι αλλαζει. Αυτη τη στιγμη φανταζομαι οτι εχεις μια κλαση extends applet και αλλες 2 extends Frame και εχεις μεσα στο applet ta 2 Frames ως attributes? Δοκιμασε να κανεις τα Frames να παιρνουν στο constructor παραμετρο ολη την applet. Μεσα στην applet οταν τα φτιαχνεις δηλαδη να τους δινεις και το this μεσα σε παρενθεση. Μετα αφου το καθε Frame θα εχει προσβαση στα public της applet, θα μπορει να εχει προσβαση και σε μεθοδους και attributes του αλλου Frame, δεδομενου οτι εχεις φτιαξει public οτι χρεαζεται να ειναι προσβασιμο. Αν εχεις κανει κατι τελειως διαφορετικο, δεν ξερω χωρις να δω τον κωδικα
christomar Δημοσ. 15 Απριλίου 2007 Μέλος Δημοσ. 15 Απριλίου 2007 Όχι έτσι το έχω όπως το περιέγραψες!Πάω να το δοκιμάσω σ'ευχαριστώ πολύ για τη βοήθεια!Αν αντιμετωπίσω άλλο πρόβλημα θα ενημερώσω.
Προτεινόμενες αναρτήσεις
Αρχειοθετημένο
Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.