簡體   English   中英

如何更改小程序的顏色

[英]How To Change Applet Color

我需要為Uni創建的程序需要一些幫助。 問題是setColor和getColor方法不起作用,並且當我也想要它時,行也不會更改顏色。

我需要怎么做才能將線條的顏色更改為紅色?

干杯

import java.awt.Color;
import java.awt.Point;
import javax.swing.JPanel;
import java.awt.*;

public class Shape extends JPanel {
static Point startPoint = new Point(0, 0);
Point controlPoint = new Point(0, 0);

Color colour = Color.BLACK;

public Shape() {
    this(startPoint);

}

public Shape(Point startPoint) {
    // initialise variable startPoint
    this.startPoint = startPoint;
    // execute methods setColour and setControlPoint
    setColor(colour);
    setControlPoint(controlPoint);
    // change startPoint
    startPoint.x = 50;
    startPoint.y = 50;

}

public void setColor(Color colour) {
    this.colour = colour;
    colour = Color.RED;
}

public Color getColor() {
    return colour;
}

public void setControlPoint(Point controlPoint) {
    controlPoint.x = 150;
    controlPoint.y = 150;
}

public void paintComponent(Graphics g) {
    super.paintComponents(g);
    g.setColor(colour);
    g.drawLine(startPoint.x, startPoint.y, controlPoint.x, controlPoint.y);
}

}

設置顏色后,您需要調用repaint()

public void setColor(Color colour) {
    this.colour = colour;
    colour = Color.RED;

    // Repaint so the component uses the new color
    repaint();
}

或者,您可以擺脫setColor()方法。

然后,您可以使用:

setForeground( colour );

控制要繪制的線條的顏色。

Graphics對象的顏色將被設置為前景色,因此您也可以擺脫:

g.setColor( colour );

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM