Wie kann ich ein Rechteck zeichnen, in Richtung der Spitze der Anwendung in java
Wie kann ich ein Rechteck zeichnen, in Richtung der Spitze der Anwendung in java ? Normalerweise ist die drawRect-Methode zieht nach unten ich habe versucht, verwenden Sie eine negative Zahl ein, aber das würde nicht funktionieren
Graphics g = p.getGraphics();
g.fillRect(50, 200,50,100);
- Zeigen Sie uns ein Bild von dem, was Sie bekommen und was Sie wollen.
- Post eine kleine runnable Beispiel und man könnte eine Antwort bekommen, die tatsächlich hilft Ihnen.
- g.fillRect(0,0,10,10), wird das Rechteck in der linken oberen Ecke.
Du musst angemeldet sein, um einen Kommentar abzugeben.
In Rechtecke, X-und Y-Koordinaten stellen die linke Obere Ecke. Die Länge und Breite und dann ziehen Sie Weg von der Definition von Punkt. Dein Beispiel zeichnet ein Rechteck mit der linken oberen Ecke an 50,200 und mit einer Breite von 50 und einer Höhe von 100, die beiden Weg von, diese Punkte in eine positive Richtung. Wenn Sie wollten, ein Rechteck mit 50,200 Vertreter der linken unteren Ecke, einfach subtrahieren Sie die Höhe aus, die y-Koordinate (200) und verwenden Sie diese als Start-y:
Um auf Ihre Beispiele, versuchen Sie so etwas wie dieses (ich werde einfach verwenden von rectangle-Objekten statt
tatsächlich füllen die Grafik):
Nach dem Befüllen Rechtecke mit diesen Maßen auf das graphics-Objekt, erhalten Sie drei
Rechtecke mit einer Breite von 50 jeweils im Abstand von 50 auseinander, mit der Unterseite, alle auf der y - =200-Linie.
Java
Graphics
Klasse wird davon ausgegangen, dass der Ursprung(0, 0)
ist die Obere linke Ecke des Rahmens, das heißt, dass(1, 1)
ist nach unten und nach rechts von(0, 0)
. Dies ist im Gegensatz zur Mathematik, in denen die Herkunft in einem standard kartesischen Ebene ist die linke untere Ecke, und(1, 1)
ist über und rechts von(0, 0)
.Auch, Java ist es nicht möglich, verwenden Sie negative Werte für Breite und Höhe. Diese Ergebnisse in spezielle Logik, die in der Regel behandelt das Rechteck anders als eine normale, positiv-dimension Rechteck.
Zu bekommen, was Sie wollen, erst storniert werden Ihr denken über die y-Koordinate im Java
Graphics
Koordinatensystem. Positive y nach unten, nicht nach oben (obwohl positive x ist noch Recht, wie standard-kartesische plots).Dass gesagt wird, die Felder für
drawRect
undfillRect
sind:Zoe ' s Antwort zeigt ein gutes Beispiel, wie zu bekommen, was Sie wollen, ich dachte nur, Sie möchten vielleicht eine genauere Erklärung, warum "die
drawRect
Methode zieht nach unten."Ausführen..
Ziehen Sie die Maus in eine beliebige Richtung auf das applet-Fenster..und sehe, was passiert...
Hoffe, Sie werden eine Vorstellung davon bekommen, es....