Ich möchte nur wissen, wie man einen Punkt/Pixel an einer bestimmten x, y-Koordinate auf meinem JFrame machen.Java macht einen "Punkt/Pixel" In Swing/Awt
Wer kennt einen einfachen Code dafür?
Danke,
Ich möchte nur wissen, wie man einen Punkt/Pixel an einer bestimmten x, y-Koordinate auf meinem JFrame machen.Java macht einen "Punkt/Pixel" In Swing/Awt
Wer kennt einen einfachen Code dafür?
Danke,
ich ein kleines Beispielprogramm erstellt haben:
public class Test extends JFrame {
public Test() {
this.setPreferredSize(new Dimension(400, 400));
this.pack();
this.setVisible(true);
this.setDefaultCloseOperation(EXIT_ON_CLOSE);
}
@Override
public void paint(Graphics g) {
super.paint(g);
// define the position
int locX = 200;
int locY = 200;
// draw a line (there is no drawPoint..)
g.drawLine(locX, locY, locX, locY);
}
public static void main(String[] args) {
Test test = new Test();
}
}
Sie könnten auch die update oder paintComponents Methode verwenden, die viel schöner wäre. Aber dann musst du sicherstellen, dass es aufgerufen wird. Wenn Sie Probleme haben und es nicht aufgerufen wird erhalten Sie die folgende Lösung verwenden: Why is paint()/paintComponent() never called?
bester Kompromiss zwischen Einfachheit und Nützlichkeit wäre wahrscheinlich JPanel und überschreibt paintcomponent (Graphics) zu verlängern. Dann legen Sie diese Platte in Ihrem JFrame (mit einem entsprechenden Layout Es gibt hier einige Hinweise zur Verwendung:.. http://download.oracle.com/javase/1.4.2/docs/api/javax/swing/JComponent.html#paintComponent%28java.awt.Graphics%29
void update(Graphics g)
Methode der JFrame-Klasse Grafik-API (wie Draw Punkt, Linie zeichnen, ziehen Bogen, etc.) sind in Graphics-Klasse
EDIT:. http://www.javadb.com/drawing-a-line-using-java-2d-graphics-api
Fragen Sie sich, wenn Ihr wirklich wollen JFrame
oder JPanel
zu verlängern. Wenn Sie sich entscheiden, dass Sie das nicht tun, können Sie eine grundlegende JComponent
erstellen. Je nachdem, welchen Layout-Manager Sie verwenden, kann dies unterschiedlich erfolgreich sein.
public class PixelComponent extends JComponent
{
private Color color;
public PixelComponent(Color color)
{
super();
this.color = color;
}
public PixelComponent()
{
this(Color.BLACK);
}
public void paintComponent(Graphics g)
{
super.paintComponent(g);
g.setColor(color);
g.fillRect(0, 0, 1, 1);
}
}
Senden Sie die Grafik-Referenz und Achse x und y ein Pixel zu machen:
private void doPixel(Graphics g, int x, int y){ g.fillRect(x, y, 1, 1); }
Ordentliches kleines Beispiel Dank. Ich musste die importierten Dateien hinzufügen: import javax.swing. *; import java.awt.Graphics; importieren Sie java.awt.Dimension; – strainer
Danke, können Sie die Farbe der Linie/Punkt/Punkt einstellen? :) –
Wie mache ich es für Doppel anstelle von Ints? –