📄 applet.java
字号:
package applet;
import java.applet.*;
import java.awt.*;
import java.util.Vector;
//行情图表小应用程序(在showdetail.jsp页面中进行显示)
public class applet extends Applet{
Vector vec=null;
Label label[]=new Label[6];
Label time1,time2;
Label titlelabel,danweilabel;
float str[];
float maxprice,minprice;//最大价格和最小价格
int number;//记录个数
String maxdate,mindate;//要显示的行情图表的最大时间和最小时间
String title,danwei;
public void init()
{//布局为无模式
this.setLayout(null);
//从include/detailcontent1.jsp中取得各个参数
number=Integer.parseInt(getParameter("number"));
maxdate=getParameter("maxdate");
mindate=getParameter("mindate");
title=getParameter("title");
danwei=getParameter("danwei");
str=new float[number];
for(int i=0;i<number;i++)
{
str[i]=Float.parseFloat(getParameter("price"+i));
}
maxprice=Float.parseFloat(getParameter("maxprice"));
minprice=Float.parseFloat(getParameter("minprice"));
for(int i=0;i<6;i++)
{
label[i]=new Label();
label[i].setBounds(0,50+i*30,70,20);
label[i].setBackground(Color.WHITE);
add(label[i]);
}
time1 = new Label();
time2=new Label();
time1.setBounds(20,220,100,20);
time1.setBackground(Color.WHITE);
time2.setBounds(410,220,100,20);
time2.setBackground(Color.WHITE);
add(time1);
add(time2);
titlelabel=new Label();
danweilabel=new Label();
titlelabel.setBounds(210,40,145,20);
danweilabel.setBounds(360,40,100,20);
titlelabel.setBackground(Color.WHITE);
danweilabel.setBackground(Color.WHITE);
add(titlelabel);
add(danweilabel);
float average=(maxprice-minprice)/5;//取得最大价格和最小价格之间的平均值
//把最大价格和最小价格分为6等份
for(int i=0;i<6;i++)
{
label[i].setText(String.valueOf(maxprice-i*average));
}
time1.setText(mindate);
time1.setAlignment(1);
time2.setText(maxdate);
time2.setAlignment(1);
titlelabel.setText(title+"走势");
titlelabel.setAlignment(2);
danweilabel.setText("单位:"+danwei);
danweilabel.setAlignment(2);
setBackground(Color.WHITE);
}
public void paint(Graphics g)
{ g.setColor(new Color(143,143,101));
//画6条横直线
for(int i=0;i<6;i++)
{
g.drawLine(70,60+i*30,460,60+i*30);
}
//画14条竖直线
for(int i=0;i<14;i++)
{
g.drawLine(70+i*30,60,70+i*30,210);
}
g.setColor(new Color(0,0,101));
//把价格转化为对应的坐标,然后用直线连接起来
for(int i=0,j=1;i<(number-1);i++,j++)
{
g.drawLine((70+(390/(number-1))*i),(int)(210-((str[i]-minprice)/(maxprice-minprice))*150),(70+(390/(number-1))*j),(int)(210-((str[j]-minprice)/(maxprice-minprice))*150));
}
//如果记录数为0,在这段区间内显示“没有数据”
if(number==0)
{
Font f=new Font("Dialog",Font.ITALIC,18);
g.setFont(f);
g.setColor(Color.red);
String str="查询区间:"+mindate +"---"+maxdate+"没有数据";
g.drawString(str,80,150);
}
//如果记录数为1,则画一点
if(number==1)
{
g.setColor(new Color(50,0,101));
g.fillOval(70,60,5,5);
time2.setVisible(false);
for(int i=1;i<6;i++)
{
label[i].setVisible(false);
}
}
else
{
time2.setVisible(true);
for(int i=1;i<6;i++)
{
label[i].setVisible(true);
}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -