0
아래
은 내가 드로잉 클래스에 대해 가지고있는 코드입니다. iv는 화면에 3 개의 도형을 만드는 법을 가르쳐 준 문서를 찾고있었습니다.advice on JPanel - Drawing Area & listeners
저는 jframe을 가지고 있는데, 아래의 그림과 같은 모양을 선택할 수있는 메뉴가 있습니다.
if (clickedMenu.getText().equals("Square")){
value = pane.returnslider();
shape = new ASquare(value);
그래서 제 질문은 : 내가하는 방법은 크기가 슬라이더의 값에 따라 변경 내 JFrame의에 나타나는 2D 사각형을 만들 수있는 아래의 클래스를 수정?
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package assignment;
import java.awt.Graphics;
/**
*
* @author Steven
*/
public class MyDrawing extends javax.swing.JPanel {
/**
* Creates new form MyDrawing
*/
@Override public void paintComponent(Graphics g) {
super.paintComponent(g); // paints background
}
}
어쩌면 내 질문에 대답에 도움이 것이 내 JPanel의 일부 코드 :
public class MyChangeAction implements ChangeListener {
//complete code here
@Override
public void stateChanged(ChangeEvent ce) {
double value = slider.getValue();
String str = Double.toString(value);
sliderLabel.setText(str);
DecimalFormat df = new DecimalFormat("0.0");
boundary_length.setText("" + df.format(MyFrame.shape.computeBoundaryLength(value)));
area.setText("" + df.format(MyFrame.shape.computeArea(value)));
}
} // end class
public double returnslider() {
return slider.getValue();
}
내 평방 클래스 :
package assignment;
import java.awt.event.ActionListener;
/**
*
* @author b00560806
*/
public class ASquare extends MyShape {
double value;
public ASquare(double value) {
this.value = value;
}
@Override
public double computeBoundaryLength(double Length)
{
thelength=(4*Length);
return thelength;
}
@Override
public double computeArea(double Length)
{
thearea=(Length*Length);
return thearea;
}
}