これはJavaを行う私の2学期ですので、しばらくお待ちください。私の割り当ての一部は、ラジオボタンをクリックし、Circleのdrawメソッドを使用して、マウスボタンがクリックされたときにJpanelコンテンツペインにCircleオブジェクトを描画することです。次に、各CircleオブジェクトをArraylistに格納して、ラジオボタンのクリックを解除するまでペインに表示されるようにします。CircleオブジェクトをArraylistに追加し、その円を画面上に保持することを除いて、すべてを機能させることができます。一度に1つの円を描画し、もう一度クリックすると最初の前の円を消去します。作成した新しいサークルをArraylistに追加しているとは思いません。ただのサークルです。わからない。
これが円を描いている部分の私のコードです。
public class MyPanel extends JPanel {
public ArrayList<Circle> circles;
public void paintComponent(Graphics g) {
Circle c = new Circle(xstart, ystart); //create a new circle
ArrayList<Circle> circles = new ArrayList<Circle>();
if (drawing){
c.draw(g);
circles.add(c);
for(int k=0; k<circles.size(); k++){
circles.get(k).draw(g);
}
} // draw the circle
MouseTestコンストラクターで描画ブール値を描画および宣言し、ラジオボタンに関連付けるためのコード。真を描くということは、ラジオボタンがクリックされたときに円を描くことができることを意味します。
JPanel radioPanel = new JPanel(new GridLayout(2,0)); //new GridLayout(y, x)
radioPanel.add(circleButton);
radioPanel.add(trackButton);
cp.add(radioPanel,BorderLayout.EAST);
drawing = false;
circleButton.addActionListener(new ActionListener() {
//Set drawing to true when the button is clicked
public void actionPerformed(ActionEvent ae) {
drawCircles();
}
});
public void drawCircles() { //initialize tracking to false
drawing = !drawing;`