
import java.awt.Choice
import java.awt.Color
import java.awt.FlowLayout
import java.awt.Frame
import java.awt.Graphics
import java.awt.event.*
public class Sinea extends Frame implements ItemListener{
public static void main(String arg[]) {
Sinea s = new Sinea("Sine curve")
s.addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
System.exit(0)
}
})
s.setLayout(new FlowLayout())
s.setSize(430, 280)
Choice choice=new Choice()
choice.addItem("正")
choice.addItem("余")
choice.addItem("切")
choice.addItemListener((ItemListener) new Sinea())
s.add(choice)
MyCanvas cnv= new MyCanvas( )
cnv.setSize(400, 200)
cnv.setBackground(Color.white)
cnv.setForeground(Color.black)
s.add(cnv)
s.setVisible(true)// for JDK 1.5
//s.show()// for JDK 1.4
}
public Sinea(){}
public Sinea(String title)
{
super(title)
}
public void itemStateChanged(ItemEvent e){
//TODO 写事件处理方法
}
}
class P{
int marg=10, xorg=0, yorg=100, width=400, height=200
double sx = 1.0, sy = 80.0
int x, y, u, v
public P(int u, int v){
this.u = u
this.v = v
UVtoXY()
}
public void UVtoXY(){
x = xorg + marg + (int)(sx*(double)u)
y = yorg + marg - (int)(sy*(double)v)
}
public void UVtoXY(double du, double dv){
x = xorg + marg + (int)(sx*du)
y = yorg + marg - (int)(sy*dv)
}
}
class MyCanvas extends Canvas{
public void paint(Graphics g) {
int i
double u, v, frq=2.0
P org = new P(0, 0)
P x400 = new P(400, 0)
P ypone = new P(0, 1)
P ymone = new P(0, -1)
g.drawLine(org.x, org.y, x400.x, x400.y)
g.drawLine(ypone.x, ypone.y, ymone.x, ymone.y)
P pold = new P(0, 0)
P pnew = new P(0, 0)
for(i = 0i <360 i=i+1) {
u = (double)i
v = Math.sin(frq*u*Math.PI/180.0)
pnew.UVtoXY(u, v)
g.drawLine(pold.x, pold.y, pnew.x, pnew.y)
pold.x = pnew.xpold.y = pnew.y
}
}
}
//核心代码String[] sg= {"苹果","香蕉","樱桃","山楂"}
JComboBox<String> jcb = new JComboBox<String>(sg)
完整代码
import java.awt.*import javax.swing.*
public class MFrame extends JFrame{
public MFrame() {
String[] sg= {"苹果","香蕉","樱桃","山楂"}
JComboBox<String> jcb = new JComboBox<String>(sg)
add(jcb)
setLayout(new FlowLayout())//把JFrame设置成流式布局
setTitle("测试")//设置窗口标题
setSize(220, 100)//设置窗口大小
setLocationRelativeTo(null)//设置窗口居中
setDefaultCloseOperation(EXIT_ON_CLOSE)//设置点击关闭退出jvm虚拟机
setVisible(true)//设置窗口可见
}
public static void main(String[] args) {
new MFrame()//创建窗口
}
}
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)