Thomy Geschrieben 10. Juli 2001 Teilen Geschrieben 10. Juli 2001 Hallo, Ich bin gerade im Praktikum und stelle für eine Firma ein Applet zur Darstellung Simulierter Werte dar. Seit 4 Wochen beschäftige ich mich damit ( um genau zu sagen auch mit Java ) und habe einiges schon dazugelernt. Jetzt bin ich am verfeinern für die 2. Version dieses Applet. Das Applet stellt Verschiedene Channel Sprich Werte dar. Die Zeitachse X und ein jeweiliger Wert Y ( Spannung Strom ect...) Wie kann man ein eigenes Object erschaffen das auf MouseEvents oder andere Events reagiert ?. zb könnte eine Polyline ein auslöser für ein Event sein ? zb. Ich drücke auf einen Polyline und ich könnte eine Legende einblenden lassen für diesen Channel. Habt Ihr Vorschläge ? Kann mir das evtl jemand erklären für einen Stink normalen Punkt (x,y,z) z für Ebende Wie könnte ich sowas anfangen ? --Thomy PS: kann man Java als Programiersprache in der Prüfung nehmen, wenn man ein kleines Prog. schreiben sollte ? PS2: Falls jemand ne Idee hat dann bitte ich euch mir dies per Email mitzuteilen. thomy@tuts.nu. Und falls jemand lust hat übernächste Woche in Mecklenburg zu Zelten der melde sich auch ( Windsurfen ) Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
T. Schiffler Geschrieben 12. Juli 2001 Teilen Geschrieben 12. Juli 2001 Hi Also Events selbst zu bauen ist nicht das Problem. Allerdings hast Du hier nun ein anderes, wenn ich Deine Schilderung richtig verstanden habe. Ich fasse kurz und grob zusammen: Du hast ein Panel auf welchem eine Linie gezeichnet ist. Klickt der User nun auf diese Linie, so soll ein Popup kommen in welchem irgend welche Informationen stehen. Klickt er woanders hin als auf die Linie, dann passiert nichts. Dies würde ich mit einem Mouse Listener lösen. Beim Event "MouseClicked" fragst Du die Koordinate des Mauszeigers ab. Ist die Koordinate im Bereich der Linie, dann zeige das Fenster an. Hierbei sehe ich als Problem, daß die Überprüfung der Koordinate je nach Graph nicht gerade einfach ist und unter umständen etwas länger dauert. Weiterhin ist die Frage "Was passiert, bei 2 Graphen und welches Popup ist zu zeigen (Graph 1, Graph 2, ein gemeinsames) ?" zu behandeln. Falls Du was anderes meintest, versuche es nochmal anders darzustellen und ich versuche zu helfen. Gruß Erbeere Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Thomy Geschrieben 12. Juli 2001 Autor Teilen Geschrieben 12. Juli 2001 Hallo, http://praktikum.tuts.nu/applet/Page1.htm das ist eine ältere Version. Ich wollte eigendlich immer die genauen Werte anzeigen wenn jemand auf einen Berechneten Punkt gekommen ist. Aber das scheint wohl nen riesen Aufwand zu sein. Ein weiteres Problem ist. Ich wollte das Appletr von aussen Steuern: document.Appletname.Appletmethode("irgendwas"); dieser Spass geht unter IE auch aber unter Netscape(4.77) bekomme ich eine Fehlermeldung: Javascript error Type 'javascript': into Location for details" evtl nen Ahnung warum ? ( Aktiviert ist java und auch Javascipt ) --Thomy PS: wenn ich jetzt 100 Rechtecke auf meinem Applet hätte müsste ich bei jedem MouseDown alle Rechtecke durchlaufen bis ich das gefunden haben was entspricht ? Bei Buttons geht das doch "von allein", also Butten w=new Button("Test"); add(w); Rectangle rec=new Rectangle(); rec.setBounds(0,0,100,100); dort kann man doch einfach abfragen ob sender = w ist. Bekommt man das bei Rechtecken evtl auch so hin ? evtl Sogar mit Arrays? eine Object mit Rectangle Elementen. if rec[1]==sender ..... Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
T. Schiffler Geschrieben 12. Juli 2001 Teilen Geschrieben 12. Juli 2001 Hi Ja, Du mußt alle Rechtecke durchlaufen. Außer Du bekommst es hin, direkt die "Linie" als Object.getSource() hinzubekommen Erbeere Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.