Article View: cn.bbs.comp.lang.java
Article #24360��ʾһ��button,��֮��һ���url��Դ����(ת��)
From: wooce
Date: Thu, 26 Mar 1998 00:00
Date: Thu, 26 Mar 1998 00:00
168 lines
4236 bytes
4236 bytes
/* surprise.java
*
* Copyright � 1996 Robert Flannery
*
* Permission to use, copy, modify, and distribute this software
* and its documentation for NON-COMMERCIAL or COMMERCIAL purposes and
* without fee is hereby granted.
*
* Robert Flannery MAKES NO REPRESENTATIONS OR WARRANTIES ABOUT THE
* SUITABILITY OF THE SOFTWARE, EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT
* LIMITED TO THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
* PARTICULAR PURPOSE, OR NON-INFRINGEMENT. Robert Flannery SHALL NOT BE LIABLE
* FOR ANY DAMAGES SUFFERED BY LICENSEE AS A RESULT OF USING, MODIFYING OR
* DISTRIBUTING THIS SOFTWARE OR ITS DERIVATIVES.
*
* THIS SOFTWARE IS NOT DESIGNED OR INTENDED FOR USE OR RESALE AS ON-LINE
* CONTROL EQUIPMENT IN HAZARDOUS ENVIRONMENTS REQUIRING FAIL-SAFE
* PERFORMANCE, SUCH AS IN THE OPERATION OF NUCLEAR FACILITIES, AIRCRAFT
* NAVIGATION OR COMMUNICATION SYSTEMS, CONTACT WITH ALIEN LIFE FORMS,
* DIRECT LIFE SUPPORT MACHINES, OR WEAPONS SYSTEMS, IN WHICH THE FAILURE OF
* THE SOFTWARE COULD LEAD DIRECTLY TO DEATH, PERSONAL INJURY, OR SEVERE
* PHYSICAL OR ENVIRONMENTAL DAMAGE ("HIGH RISK ACTIVITIES"). Robert Flannery
* SPECIFICALLY DISCLAIMS ANY EXPRESS OR IMPLIED WARRANTY OF FITNESS FOR
* HIGH RISK ACTIVITIES.
*/
import java.applet.*;
import java.awt.*;
import java.net.*;
import java.util.*;
public class surprise extends Applet {
protected int numURLs;//number of URLs in parameter
Button go;
String[] myURLs;
Random forWhere;
protected int i;
/********************************* init (Gets it started)*/
public void init(){
/* load string arrays */
myURLs = fillArray("where");
forWhere = new Random();//instance Random generator
go = new Button("Surprise!");
go.setBackground(Color.green);
this.add(go);
this.show();
}
/********************************* fill array */
public String[] fillArray(String name) {
String Raw = this.getParameter(name);//read raw parameter
StringTokenizer Rip = new StringTokenizer(Raw, ",", false);//instance
numURLs = Rip.countTokens();//How many?
//if (name.compareTo("where")) ERROR!!!!!
String[] filler = new String[numURLs];//instance
for(i=0;i<numURLs;i++) {
try{
filler[i] = Rip.nextToken();//transfer token
} catch (NoSuchElementException e){
System.out.println(e.getMessage());
}
}
return filler;
}
/*************************************** pick random integer */
public int pickNumber(int arrayLen) {
Float DumbNum = new Float(arrayLen * (forWhere.nextFloat()));//dumb floating number
if (DumbNum.intValue() >= arrayLen) return 0;//outahere
return DumbNum.intValue();
}
/********************************************* handle events */
public boolean action(Event event, Object arg){
URL goThere;
if (event.target == go) {// pick a URL and go!
try {
this.getAppletContext().showDocument(goThere = new URL(myURLs[pickNumber(numURLs)]));
return true;
}
catch (MalformedURLException err)
{
try {
this.getAppletContext().showDocument(goThere = new URL("http://www.starnine.com/"));// oops!
return true;
}
catch (MalformedURLException errr)
{
return true;// we tried
}
}
} else {
return super.action(event, arg);
}
}
} /* EOA */
--
[m[1;34m�� ��Դ:���������� BBS bbs.nease.net��[FROM: 202.96.174.34][m
Technical Details
Message-ID:
<3Ndaie$7WW@bbs.nease.net>Path:
arc1-ca.pugleaf.net!unknown!not-for-mailShow Full Headers
Complete Article Headers
X-Google-Language: ENGLISH,ASCII X-Google-Thread: f6cb0,cb7e671cedf5af32,start X-Google-Attributes: gidf6cb0,public From: wooce.bbs@bbs.nease.net (wooce) Subject: ��ʾһ��button,��֮��һ���url��Դ����(ת��) Date: 1998/03/26 Message-ID: <3Ndaie$7WW@bbs.nease.net> X-Deja-AN: 337839341 X-Filename: Java/M.890903656.A Organization: Net Ease Newsgroups: cn.bbs.comp.lang.java,