mikrocontroller.net

Forum: PC-Programmierung Klassen miteinander verknüpfen


Autor: Kai Seufert (kai999)
Datum:

Bewertung
-1 lesenswert
nicht lesenswert
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.

Autor: Jemand (Gast)
Datum:

Bewertung
2 lesenswert
nicht lesenswert
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?

Autor: Kai Seufert (kai999)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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);

Autor: Eric B. (beric)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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.

Autor: Kai Seufert (kai999)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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?

Autor: Mark Brandis (markbrandis)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Zeig einfach mal Deinen bisherigen Code. Am besten als Datei angehängt.

Autor: Kai Seufert (kai999)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
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.

Autor: Rufus Τ. Firefly (rufus) (Moderator) Benutzerseite
Datum:

Bewertung
1 lesenswert
nicht lesenswert
*.docx?

Ist das Dein Ernst?

Autor: Kai Seufert (kai999)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Oh Sorry war ein langer Tag, hab gar nicht drauf geachtet.

Autor: Andre R. (physicist)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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.

Autor: Eric B. (beric)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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.

Autor: Kai Seufert (kai999)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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 :-(

Autor: Mark Brandis (markbrandis)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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.

Autor: Eric B. (beric)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Mach in Calculator einen Memebr vom Typ Diagramm anstatt es in einen 
lokalen Variabele im Constructor zu packen:
public class Calculator
{
    private Diagramm myDiag;

    public Calculator()
    {
        ...
        add(myDiag, c);
    }
    
    public void actionPerformed(ActionEvent e)
    {
        tue_was_mit(myDiag);
    }
}

War das jetzt wirklich zu schwierig?

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.