《Java编程思想》读书笔记(4)
前面两篇里写了一个简单的Applet,并且用一个html页面运行了这个Applet。可为每个applet都创建一个用来测试运行的html页面,这让我感到很麻烦,有没有更简单的测试运行方法哪?恩,下面就来两种解决方法:
1) Appletviewer可以根据<applet>标记在HTML文件里找出applet,然后不显示HTML文本,直接运行这个applet。由于Appletviewer忽略了除applet标记之外的所有其他东西,因此可以直接把applet标记当作注释放到Java的源文件里:
import java.awt.*;
import javax.swing.*;
//<applet code=HelloTest width = 400 height=200></applet>
public class HelloTest extends JApplet
{
public void init()
{
JButton btnOK = new JButton("确定");
this.getContentPane().add(btnOK);
}
}
import javax.swing.*;
//<applet code=HelloTest width = 400 height=200></applet>
public class HelloTest extends JApplet
{
public void init()
{
JButton btnOK = new JButton("确定");
this.getContentPane().add(btnOK);
}
}
这样就可以用"appletviewer
HelloTest.java"来启动applet了,不用再写HTML的测试文件了(可这样写我感觉是有点奇怪,^o^)
2)
要想创建能用命令行启动的applet,只要在类里加一个main(
),让它把这个applet的实例嵌到JFrame里面就行了。就能让它既能当应用程序,又能当applet运行。
import java.awt.*;
import javax.swing.*;
public class HelloForm extends JApplet
{
public static JApplet appTmp = null;
public void init()
{
JButton btnOK = new JButton("确定");
this.getContentPane().add(btnOK);
}
public static void main(String[] args)
{
JFrame frame = new JFrame("myFrame");
frame.getContentPane().add(appTmp);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(200,100);
appTmp.init();
appTmp.start();
frame.setVisible(true);
}
}
import javax.swing.*;
public class HelloForm extends JApplet
{
public static JApplet appTmp = null;
public void init()
{
JButton btnOK = new JButton("确定");
this.getContentPane().add(btnOK);
}
public static void main(String[] args)
{
JFrame frame = new JFrame("myFrame");
frame.getContentPane().add(appTmp);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(200,100);
appTmp.init();
appTmp.start();
frame.setVisible(true);
}
}
作者:洞庭散人
出处:http://phinecos.cnblogs.com/
本博客遵从Creative Commons Attribution 3.0 License,若用于非商业目的,您可以自由转载,但请保留原作者信息和文章链接URL。
posted on 2006-05-31 00:10 Phinecos(洞庭散人) 阅读(756) 评论(2) 编辑 收藏 举报
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· .NET周刊【3月第1期 2025-03-02】
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· [AI/GPT/综述] AI Agent的设计模式综述