2012年6月5日 星期二

Intermediate Java(25) - Finishing the Oval Slider Program


In TheWindows.class
import java.awt.*;
import javax.swing.*;
import javax.swing.event.*;

public class TheWindow extends JFrame {
private JSlider slider;
private DrawOval myPanel;
public TheWindow(){
super("The Title");
myPanel = new DrawOval();
myPanel.setBackground(Color.orange);
slider = new JSlider(SwingConstants.HORIZONTAL,0,200,10);
slider.setMajorTickSpacing(10);
slider.setPaintTicks(true);
slider.addChangeListener( Slider有沒有改變
new ChangeListener(){
public void stateChanged(ChangeEvent e){ Slider改變任何狀態
myPanel.setD(slider.getValue()); → slider的值是myPanelsetD的值
}
}
);
add(slider,BorderLayout.SOUTH); → slider在下面
add(myPanel,BorderLayout.CENTER); → myPanel 放在中間
}

}



In apples.class:



import javax.swing.*;

public class apples{
public static void main(String[] args){
TheWindow w = new TheWindow();
w.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
w.setSize(230,280);
w.setVisible(true);
}
}

這是運行時的結果:  
你可以拖動slider,並更大或更小繪製橢圓形


沒有留言:

張貼留言