Hallo alle zusammen, ich bin ein Einsteiger und habe eine Anwendung programmiert mit Berechnungen und Liniendiagramm. Mein Diagramm ist in einer weiteren Klasse. Nun wollte ich wissen, wie ich die Klasse(Diagramm) mit meiner Hauptklasse verknüpfen kann, um auf die berechneten Werte zugreifen und es auf dem Diagramm darstellen zu können. Eine weitere Frage ist, wie kann durch einen Knopfdruck die Linie dann löschen bzw. leeren? Danke im Voraus.
Das ist ganz einfach, Du musst in deiner Hauptklasse nur eine Verknüpfung zu deiner Klasse(Diagramm) anlegen... Wie wäre es mit ein paar mehr Infos? Programmiersprache? Code? Irgendwas hilfreiches?
Wie lege ich die Verknüpfung an? Oh sry, hab vergessen es zu erwähnen. Die Programmiersprache ist Java Eclipse. Das folgende Code ist für mein Diagramm und in der letzten Zeile "g2.drawLine(x1, y1, x2, y2);", sollen die berechneten Werte von der Hauptklasse stehen. g2.drawLine(0, 0, 0, this.getHeight()); int i = 0; for(int y=this.getHeight()-1; y>0;y-=scaleY) { //g2.drawLine(0, y, 3, y); if (i%3==0) { g2.drawString("" + (this.getHeight()-1-y)/scaleY, 3, y-3); g2.drawLine(0, y, 8, y); } else g2.drawLine(0, y, 3, y); i++; } g2.setPaint(Color.blue); g2.drawLine(50, this.getHeight()-50, 300 , 150);
Deine Diagrammklasse braucht wahrscheinlich eine Referenz auf die Hauptklasse. Die kannst du entweder als Parameter der Funktion worin obigen Code steht mitgeben, oder als Member deiner Diagrammklasse definieren.
Wie gesagt ich bin noch Anfänger. Ich kann mir zwar von dem was du gesagt hast was vorstellen, aber kannst du mal etwas vorgeben, Bsp. oder so wie man das als Parameter der Funktion mitgibt?
Zeig einfach mal Deinen bisherigen Code. Am besten als Datei angehängt.
In dem Code sind die Stellen mit "//Kommentar" vermerkt, da ergänze ich noch die dazu gehörigen Sachen. Des Weiteren soll das Diagramm auf der Y-Achse, den Durchmesser (jNumberField1) ist auch gleichzeitig meine Eingabe(Input) übernehmen und auf der X-Achse, den berechneten Wert (jNumberField19) darstellen.
Warum diese Umstände und nicht einfach als schlichte Textdatei *.java wie sie auch vorliegen?? Vielleicht will sie ja jemand testweise kompilieren und dann wäre es ganz praktisch wenn das auch ginge. Weder mit einer docx noch mit einem pdf kann der Java compiler etwas anfangen.
Kai S. schrieb: > Wie gesagt ich bin noch Anfänger. Ich kann mir zwar von dem was du > gesagt hast was vorstellen, aber kannst du mal etwas vorgeben, Bsp. oder > so wie man das als Parameter der Funktion mitgibt? Dann lies doch erst mal ein Buch oder Tutorial über Java - die erste 2 Kapiteln sollen schon reichen.
Glaub mir Eric, dass hab ich als erstes gemacht! Nachdem ich gescheitert bin, habe ich mich für das Forum entschieden. Ich hatte gehofft hier weiter zu kommen :-(
Kai S. schrieb: > Glaub mir Eric, dass hab ich als erstes gemacht! > Nachdem ich gescheitert bin, habe ich mich für das Forum entschieden. > Ich hatte gehofft hier weiter zu kommen :-( Ich würde Dir ja gerne helfen. Nur kann der Code, den Du hier gepostet hast, gar nicht kompiliert werden. Das fängt mit einer überzähligen geschweiften Klammer an, aber das ist noch lange nicht der einzige Fehler. Anscheinen willst - oder wohl eher sollst - Du hier einen Taschenrechner programmieren. Wenn Du mit dieser Aufgabe aktuell überfordert bist, dann fang mit etwas Kleinerem an. Zum Beispiel einfach mal ein Fenster aufmachen und darin ein Textlabel anzeigen. Im nächsten Schritt dann einen Button hinzufügen, der den Inhalt des Textlabels verändert wenn man ihn drückt. Und so weiter, vom Kleinen hin zum Größeren. Komm gerne wieder, wenn Du ein kompilierfähiges Beispiel hast.
Mach in Calculator einen Memebr vom Typ Diagramm anstatt es in einen lokalen Variabele im Constructor zu packen:
1 | public class Calculator |
2 | {
|
3 | private Diagramm myDiag; |
4 | |
5 | public Calculator() |
6 | {
|
7 | ...
|
8 | add(myDiag, c); |
9 | }
|
10 | |
11 | public void actionPerformed(ActionEvent e) |
12 | {
|
13 | tue_was_mit(myDiag); |
14 | }
|
15 | }
|
War das jetzt wirklich zu schwierig?
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.