学JAVA时间不长,用JAVA 时间更少。这段时间做的一个小课题中却涉及到了JAVA的Applet与数据库的通信技术,这个程序就是在没有连接数据库的情况下的仿真,测试用Applet技术构造圆形网状拓扑图。在此给出了具体的JAVA代码和Applet的运行结果截图,以供大家参考。疏漏之处必定很多,还望大家多多指教!
package o1;
import java.lang.Math;
import java.awt.*;
import java.applet.Applet;
public class MainWindow1 extends Applet{
/**
* 张明烁于2008年7月17日夜……
*/
private static final long serialVersionUID = 1L;
int x;
int y;
double r=250;
double count = 24;
public MainWindow1()
{
setSize(600,600);
setVisible(true);
setLayout(null);
for(int i=0;i<count;)
{
int radx;
int rady;
rady=-(int)(r*Math.sin(i*2*Math.PI/count));
radx=(int)(r*Math.cos(i*2*Math.PI/count));
x=300+radx;
y=300+rady;
Button b = new Button("Q"+(++i));
add(b);
b.setBounds(x,y,25,25);
}
}
public void paint(Graphics g)
{
int i=0;
int j=0;
for(;j<count;j++)
{
int radx=(int)(r*Math.cos(j*2*Math.PI/count));
int rady=-(int)(r*Math.sin(j*2*Math.PI/count));
x=300+radx;
y=300+rady;
for(i=0;i<count;i++)
{
int x0=300+radx;//当前要遍历的按横坐标。
int y0=300+rady;//当前要遍历的按横坐标。
if(true)//将所有按钮链接起来……
{
g.drawLine(x,y,x0,y0);//绘制一条直线
rady=-(int)(r*Math.sin(i*2*Math.PI/count));
radx=(int)(r*Math.cos(i*2*Math.PI/count));
}
else
{
rady=-(int)(r*Math.sin(i*2*Math.PI/count));
radx=(int)(r*Math.cos(i*2*Math.PI/count));
}
}
}
}
}
运行如下图所示:
https://p-blog.csdn.net/images/p_blog_csdn_net/mingshuo0615/428960/o_Snap2.bmp
转载自原文链接, 如需删除请联系管理员。
原文链接:基于Applet构造圆形网状拓扑图,转载请注明来源!