//TCP-URL对象方法替换split方法简化代码自定义图形界面浏览器访问tomcat服务器
import java.awt.*;//GUI
import java.awt.event.*;//监听事件
import java.io.*;
import java.net.*;
class MyIEByGUI2
{
private Frame f;//窗体
private TextField tf;//小文本 单行
private Button but;//转到按钮
private TextArea ta;//大文本 多行
private Dialog d;//对话框
private Label lab;//标签
private Button okBut;//对话框按钮
MyIEByGUI2()
{
init();//初始化方法
}
public void init()//初始化方法
{
f = new Frame("my window");
f.setBounds(300,100,600,500);//边界 setBounds(x,y,width,height); x:组件在容器X轴上的起点 y:组件在容器Y轴上的起点 width:组件的长度 height:组件的高度
f.setLayout(new FlowLayout());//流式布局
tf = new TextField(60);
but = new Button("转到");
ta = new TextArea(25,70);
d = new Dialog(f,"提示信息-self",true);//
d.setBounds(400,200,240,150);
d.setLayout(new FlowLayout());
lab = new Label();//Label是空标签
okBut = new Button("确定");
d.add(lab);//Label 对象是一个可在容器中放置文本的组件。一个标签只显示一行只读文本。文本可由应用程序更改,但是用户不能直接对其进行编辑。
d.add(okBut);
f.add(tf);
f.add(but);
f.add(ta);
myEvent();//监听事件的集合
f.setVisible(true);//窗体保持显示状态
}
private void myEvent()//监听事件的集合
{
okBut.addActionListener(new ActionListener()//监听对话框确定按钮 动作监听器 键盘 鼠标可用
{
public void actionPerformed(ActionEvent e)
{
d.setVisible(false);
}
});
d.addWindowListener(new WindowAdapter()//对话框窗口适配器 没看出来这个对话框有什么用
{
public void windowClosing(WindowEvent e)//窗口关闭事件
{
d.setVisible(false);
}
});
tf.addKeyListener(new KeyAdapter()//单行文本框tf 的 按键适配器
{
public void keyPressed(KeyEvent e)//监听键盘
{
try
{
if(e.getKeyCode()==KeyEvent.VK_ENTER)//键盘按下ENTER
showDir();//调用showDir()
}
catch (Exception ex)
{
}
}
});
but.addActionListener(new ActionListener()//转到按钮but 动作监听器 键盘 鼠标可用
{
public void actionPerformed(ActionEvent e)
{
try
{
showDir();//调用showDir()
}
catch (Exception ex)
{
}
}
});
f.addWindowListener(new WindowAdapter()//窗体f适配器
{
public void windowClosing(WindowEvent e)//窗口事件 关闭
{
System.exit(0); //窗口事件 关闭
}
});
}
private void showDir()throws Exception
{
ta.setText("");//首先清空ta文本框
String urlPath = tf.getText();//http://192.168.1.254:8080/myweb/demo.html//从文本框得到URL
URL url = new URL(urlPath);//得到url对象
URLConnection conn = url.openConnection();//从url得到一个 URLConnection 对象,它表示到 URL 所引用的远程对象的连接。
InputStream in = conn.getInputStream();//从URLConnection拿输入流,URLConnection里面封装了Socket,所以可以调用Socket的方法
byte[] buf = new byte[1024];//把拿到的输入流打印出来
int len = in.read(buf);
ta.setText(new String(buf,0,len));//在ta文本区里面打印文本
}
public static void main(String[] args)
{
new MyIEByGUI2();//实例化GUI
}
}
/*
C:\Tomcat\webapps\myweb\demo.html
http://localhost:8080/myweb/demo.html
<html>
<body>
<h1>这是我的主页</h1>
<font size=5 color=red>欢迎光临</font>
<div>
撒旦 撒旦 撒旦 撒旦 撒旦 撒旦 <br>
撒旦 撒旦 撒旦 撒旦 撒旦 撒旦 <br>
</div>
</body>
</html>
*/