![]() |
| | Themen-Optionen | Thema durchsuchen |
| | Nach oben #1 |
| Gast
Beiträge: n/a
|
Hallo Also ich habe vor ein Spielfeld zu programmieren (Spielfeld soll heißen eine Art Brettspiel mit einer geschwungenen bahn von Feldern). So nun habe ich rausgefunden das dafür warscheindlich eine eigene Komponente her muss. In Swing sollte dies laut meinem Buch durch eine Ableitung von jComponent gehen. Dann hätte ich vor ein Bild über die Anzeigebreite der Komponente zu legen. Jetzt soll aber im Spielfeld auf Klicks reagiert werden. Auch Animationen sollen gemacht werden (Bewegung der Spielfiguren). Nun kann ich aber eben in einer Komponente doch nur einen ActionListener bzw. MouseListener registrieren (also ich meine nur einen von jeder Sorte) oder ? D. h. ich müsste die Position der Maus abfragen und mir merken ob ich da ein Klickbares Objekt haben will und die jeweilige Aktion dazu oder ? Oder kann man irgendwie noch eigene Objekte in einer Komponente definieren oder so ? Ein weiteres Problem ist das jButtons von Außerhalb der Komponente Einfluss auf diese haben sollen. D.h. wenn ich außerhalb von der Komponente einen Button drücke soll in der Komponente etwas passieren. Ist sowas auch möglich ? Braucht man dafür dann eine Bean mit ihren externen Listenern (properityChangeEvent usw.) ? Ich weiß nicht ob das Vorgehen wie ich mir das gerade so ausmale korrekt ist. Vielleicht kann mir ja jemand auf die Sprünge helfen. Danke schon mal im Voraus |
|
| | Nach oben #2 |
| Benjamin Klaile Registriert seit: 02.12.2004 Ort: Remagen
Beiträge: 4.512
|
Hi, zunächst einmal bitte ich Dich nicht in unterschiedlichen Fachforen das gleiche Problem zu posten, okay? --> http://jforum.de/showthread.php?t=939 Wir helfen Dir so schnell wir können, da wir aber heute Nacht die Forensoftware gewechselt haben ... mussten wir eben etwas zurückstecken Zum Problem. Ich denke, dass das, was Du Dir da vorstellst eigentlich nur mittels eine Applets realisiert werden kann. Ich weiß es nicht, aber ich könnte mir vorstellen, dass Du so nicht mit Objekten von JComponent arbeiten kannst. Vor allem, was die Animationen aneht. Eventuell hat da jemand anderes hier noch andere Ansichten? Würde mich interessieren. Grüße Ben. |
| | |
| | Nach oben #3 | |
| Gast
Beiträge: n/a
| Zitat:
Ich hoffe mir wird verziehen | |
|
| | Nach oben #4 |
| Gast
Beiträge: n/a
|
Kann mir hier wirklich keiner weiterhelfen ?? Hat noch niemand hier eine eigene grafische Komponente programmiert ?? Das gibts doch nicht. Ich hoffe immernoch stark das es hier doch Leute gibt die Wissen wie soetwas prinzipiell funktioniert. |
|
| | Nach oben #5 |
| Gast
Beiträge: n/a
|
Wiso ein JApplet, es geht auch für normale Aplikation, du kannst von JPanel erben, du kannst auf ihn zeichnen wie auf ein Applet und auch Steuerelemente hinzufügen. Du kannst dir natürlich als Componenten(Steuerelementen) etwas selbst programmieren, ansonsten ürde ich dir von einem Canvas abraten dort kann man keine Steuerelemente hinzufügen. ich konnte leider nicht so ausfürlich und früh Antworten, da ich ziemlich viel zu tun habe im Moment mfg bluelight |
|
| | Nach oben #6 |
| Projektleiter Registriert seit: 30.11.2005 Ort: Bottrop
Beiträge: 1.129
|
Du kannst einem Component beliebig viele MouseListener "adden". Deswegen heißen die Methoden auch "addMouseListener" und nicht "setMouseListener". Dann eine Anmerkung zum allgemeinen... wenn es dir dabei nicht die Erfahrung geht, so etwas selbst zu entwickeln hätte ich nen Tipp aus meiner Sammlung "irgendwann mal aufgeschnappt und in die Lesezeichen gepackt": http://goldenstudios.or.id/products/GTGE/
__________________ Patrick Gotthardts Weblog. |
| | |
| | Nach oben #7 | |
| Gast
Beiträge: n/a
| Zitat:
Für was ist die Methode protected void paintComponent(Graphics g) ? Ich habe mir schon andere codes angeschaut, dort wird diese Methode dazu verwendet die Komponente die von JPanel abgeleitet ist von außen neu zu zeichnen. Ist das normal ? Oder sollte man paint(Graphics g) überlagern und dann repaint machen ? Ich weiß aber das paint oder repaint implizit die paintComponent aufrufen. Aber so richtig checken tu ichs noch net. Vielleicht kannst du mir das ja erklären | |
|
| | Nach oben #8 | |
| Gast
Beiträge: n/a
| Zitat:
| |
|
| | Nach oben #9 |
| Projektleiter Registriert seit: 30.11.2005 Ort: Bottrop
Beiträge: 1.129
|
Bin zwar nicht bluelight, aber mit dem Thema kenne ich mich recht gut aus... Swing verwendet eine Form von MVC (Model-View-Controller - d.h. Separation von Daten, Aussehen und Verhalten). Wenn du also das aussehen einer Komponente verändern willst, solltest du für diese Komponente ein UI-Delegate erstellen. Dieses übernimmt das eigentliche zeichnen der Komponente. Aus der Reihe "irgendwann mal aufgeschnappt und in die Lesezeichen übernommen": http://mail.phys-iasi.ro/Library/Com...ashed/ch22.htm
__________________ Patrick Gotthardts Weblog. |
| | |
| | Nach oben #10 | |
| Chefkoch-Mod Registriert seit: 30.05.2004
Beiträge: 432
| Zitat:
__________________ Denk mal darüber nach... Lars ACHTUNG: wenn ich von Klassen spreche, könnte ich auch deren Instanzen meinen. www.linuxforen.de +++ www.macuser.de +++ www.mrunix.de +++ www.lmprojects.de | |
| | |
| | Nach oben #11 | |
| Gast
Beiträge: n/a
| Zitat:
Recht viel schlauer bin ich aber glaub ich dennoch nicht geworden. In Kapitel 24 wird beschrieben wie eine Custom Komponente erstellt wird, was ja für mich warscheindlich eher zutreffen wird (weil es ja ein grafisches Spielfeld als Komponente werden soll auf dem man auch klicken und auswählen können soll). Soweit ich das jetzt verstanden habe wird eine Klasse (abgeleitet von JComponent) geschrieben, die die Komponente darstellt, aber sich nicht selbst zeichnet. Dies erledigen dann die UI-Klassen , die man selbst schreiben muss. Dann werden noch ProperityChange Listener verwendet (Die kenn ich jetzt nur aus meinem Buch, dort wurde beschrieben das diese zum Nachrichtenverkehr von Beans untereinander sind) um die Darstellungsart durch die UI-Klassen festzulegen. Ist das soweit korrekt ? Wenn ich jetzt kein look and feel umschalten benötige, brauchte ich auch keine UI-Klassen oder ? Prinzipiell gibt es ja immer nur eine paint Methode , mit der ich auch Animationen in der Komponente (Spielfiguren bewegen sich) durch Flags oder ähnliches abfragen müsste oder ? So langsam stellt sich bei mir eine totale Verwirrung ein. Hast du vielleicht auch ein Deutsches HOWTO oder ein Buch für mich auf Lager ? | |
|
![]() |
| Lesezeichen |
| Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1) | |
| Themen-Optionen | Thema durchsuchen |
| |
Ähnliche Themen | ||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| Warning: not compatibele with future Swing releases | Ben | Allgemeine Java-Programmierung | 4 | 10.03.2006 11:08 |
| Spielfeld aus Ableitung von Canvas programmieren | Maximum | Allgemeine Java-Programmierung | 3 | 15.02.2005 23:21 |