基于Applet构造圆形网状拓扑图

来源:互联网 发布:软件自学网 编辑:程序博客网 时间:2024/04/28 22:33
 基于Applet构造圆形网状拓扑图
学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));
    }
   }
   
  }
  
 }
}

<SCRIPT type=text/javascript><!--google_ad_client = "pub-5802524690470106";//728x15, 创建于 07-11-13google_ad_slot = "7233856721";google_ad_width = 728;google_ad_height = 15;//--></SCRIPT><SCRIPT src="http://pagead2.googlesyndication.com/pagead/show_ads.js" type=text/javascript></SCRIPT>
原创粉丝点击