JSlider-Advice需要

时间:2013-10-09 01:04:29

标签: java swing jslider

我很欣赏我之前提出的问题的建议。我还有一个问题。我想画一张脸,一张粉红色的圆脸。在那圆圆的粉红色的脸上,我想加上一个红色的笑容。我希望使用JSlider来延长或缩短笑容。我之前的问题涉及用圆圈B对齐圆圈A的中心,并使用JSlider增加或减小圆圈B的半径,使得圆圈A和圆圈的中心总是重合。我理解我得到的答案。但是我如何在脸上(即OVAL)修复微笑(即ARC),以便JSlider拉长或缩短笑容,但不会在脸上微笑。换句话说,笑容必须保持固定在脸上。拜托,我需要建议。我的(错误的)代码是:

    public void createGUI() {
    slider1Label = new JLabel("Mouth width(10-100): ");
    window.add(slider1Label);

    slider1 = new JSlider(JSlider.HORIZONTAL,10,100,10);
    window.add(slider1);
    slider1.addChangeListener(this);
    }

    public void stateChanged(ChangeEvent e) {

    Graphics paper = panel.getGraphics();
    int slider1Value = slider1.getValue();
    paper.setColor(Color.white);
    paper.fillRect(0, 0, 500, 500);


    paper.setColor(Color.pink); // draw the pink interior of the face
    paper.fillOval(50,50,200,200);
    paper.setColor(Color.black); // draw the black exterior border of the face
    paper.drawOval(50,50,200,200);


    paper.setColor(Color.red); // draw the red mouth
    paper.fillArc(90,140,220-slider1Value,150-slider1Value,20,-220);
    }

0 个答案:

没有答案