mianban.setLayout(new BorderLayout());

mianban.setBorder(new EmptyBorder(5,5,5,5));

menubar=new JMenuBar();

JMenu menu1=new JMenu("文件");

catch(Exception e) {

JMenu menu2=new JMenu("工具");

JButton tabCloseButton = new JButton(ii);

JMenu menu3=new JMenu("帮助");

JMenuItem menuitem2=new JMenuItem("新建标签页");

JMenuItem menuitem3=new JMenuItem("保存网页");

JMenuItem menuitem4=new JMenuItem("退出");

JMenuItem menuitem5=new JMenuItem("历史");

JMenuItem menuitem6=new JMenuItem("清空历史记录");

JMenuItem menuitem7=new JMenuItem("帮助");

menu1.add(menuitem2);

menu1.add(menuitem3);

menu1.add(menuitem4);

menu2.add(menuitem5);

menu2.add(menuitem6);

menu3.add(menuitem7);

menubar.add(menu1);

menubar.add(menu2);

menubar.add(menu3);

chuangkou.add(menubar);

chuangkou.setJMenuBar(menubar);

menuitem2.addItemListener(new

ItemListener(){

public void itemStateChanged(ItemEvent e){

chuangkou.addDefaultTab();

}

});

public void itemStateChanged(ItemEvent e){

}

});

menuitem4.addItemListener(new ItemListener(){

public void itemStateChanged(ItemEvent e){

System.exit(0);

}

}

});

menuitem5.addItemListener(new ItemListener(){

public void itemStateChanged(ItemEvent e){

}

});

menuitem6.addItemListener(new ItemListener(){

public void itemStateChanged(ItemEvent e){

}

});

menuitem7.addItemListener(new ItemListener(){

public void itemStateChanged(ItemEvent e){

new

PopupDialog("帮助","你现在看到的是我爱(5i)浏览器1.0正式版!"+"\n"+"1.点击HOME进入主页。"+

"\n"+"2.点击相应按钮执行相应功能。"+"3.网址前加http://可以浏览因特网资源,不加则浏览本地资源。");

}

class houtuiActionlistener implements ActionListener{

}); kuang.addActionListener(new

kuangActionlistener());

zhuandao.addActionListener(new zhuandaoActionlistener());

houtui.addActionListener(new houtuiActionlistener());

qianjin.addActionListener(new qianjinActionlistener());

//结构同后退按钮

shuaxin.addActionListener(new shuaxinActionlistener());

je.addHyperlinkListener(this);

public static void main(String[] args) {

}

bar.add(houtui);

bar.add(qianjin);

bar.add(shuaxin);

bar.add(lingcunwei);

mianban2.setLayout(new BorderLayout());

JPanel mianban3=new JPanel();

mianban3.setLayout(new FlowLayout());

mianban3.add(biaozhi);

}

mianban3.add(wangzhi);

mianban3.add(kuang);

mianban3.add(jisu);

mianban3.add(zhuandao);

mianban2.add(bar,BorderLayout.SOUTH);

mianban2.add(mianban3,BorderLayout.CENTER);

mianban.add(mianban2,BorderLayout.NORTH);

tabbedPane = new

JTabbedPane(JTabbedPane.TOP);

this.addDefaultTab();

mianban.add(tabbedPane,

BorderLayout.CENTER);

{

lblStatus = new JLabel("MiniIE");

mianban.add(lblStatus, BorderLayout.SOUTH);

cnt.setStatus(lblStatus);

cnt.setBr(this);

chuangkou.setVisible(true);

Toolkit tk=Toolkit.getDefaultToolkit() ;

Image image=tk.createImage("我爱浏览器.png");

chuangkou.setIconImage(image); chuangkou.getContentPane().add(mianban);

}

public void addTab(String

}

panel.setBackground(Color.WHITE);

panel.setLayout(null);

//displayHTML

Translater newHTML = new Translater();

newHTML.setDisplayPanel(panel);

newHTML.setContent(newHTML.ReadFileToStirng(webFileAddress));

newHTML.displayHTML(newHTML.getContent());

tabbedPane.addTab(newHTML.getHtmlName(), panel);

//JPanel panel1 = new JPanel();

//tabbedPane.addTab("test", panel1);

tabbedPane.setSelectedIndex(tabbedPane.getTabCount()-1);

//Close button

ActionListener al;

al = new ActionListener()

{

try {

{

JButton btn = (JButton) ae.getSource();

String sl = btn.getActionCommand();

for(int i = 1 ; i

JPanel pnl = (JPanel) tabbedPane.getComponentAt(i);

btn = (JButton) pnl.getComponent(0);

String s2 = btn.getActionCommand();

if(sl.equals(s2))

{

tabbedPane.removeTabAt(i);

break;

}

}

}

};

tabCloseButton.addActionListener(al);

tabCounter++;

}

//end add tab

public void hyperlinkUpdate(HyperlinkEvent e){

{

try{

URL url=e.getURL();

je.setPage(url);

kuang.setText(e.getURL().toString());

// setToolBarURL(sURL);//更改toolbar text field

}catch(Exception e1)

JOptionPane.showMessageDialog( chuangkou, "连接错误");

}

if(e.getEventType()==HyperlinkEvent.EventType.ACTIVATED)

}

//***************************后退按钮*******************************

public void goBack() {

}

try {

sURL = hl.getLast();//得到 previous URL

// ww.setCurrentURL(sURL);//显示 it

}

catch(Exception e) {

new PopupDialog("错误!", e.getMessage());

}

}

//***************************前进按钮*******************************

public void goForward() {

//结构同后退按钮

sURL = hl.getNext();

}

catch(Exception e) {

new PopupDialog("错误", e.getMessage());

je.setPage(website);

}

}

class qianjinActionlistener implements ActionListener{

// 刷新按钮

public void refreshURL() {

try {

}

catch(Exception e) {

new PopupDialog("错误!", e.getMessage());

}

}

public String getCurrentURL() {//记录当前的URL

return sURL;

}

public void setCurrentURL(String current)

{//设置当前URL

if (!(current.substring(0,

7)).equals("http://")) {

if(!(current.substring(0,

3)).equals("www"))

current = "www."+current;

current = "http://"+current;//确保URL的格式正确

}

public void actionPerformed(ActionEvent ae)

sURL = current;//使得URL为current值

try {

hl.add(sURL); //加入历史记录

}

new PopupDialog("错误!", e.getMessage());

}

}

class zhuandaoActionlistener implements ActionListener{

public void actionPerformed(ActionEvent e){

String website=kuang.getText().trim();

String prewebsite=website.substring(0, 7);

menuitem3.addItemListener(new ItemListener(){

if(prewebsite.equals("http://")){

try{

lingcunwei.addActionListener(new lingcunweiActionlistener());

je.setEditable(false);

jsp=new JScrollPane(je);

mianban.add(jsp,BorderLayout.CENTER);

}

catch(IOException E){}

else{

mianban=new JPanel();

JPanel mianban2=new JPanel();

}

}

}

public void actionPerformed(ActionEvent e){

}

}

class shuaxinActionlistener implements ActionListener{

// setToolBarURL(sURL); //更改 toolbar text field

public void actionPerformed(ActionEvent e){

}

public void actionPerformed(ActionEvent e){

}

}

public void actionPerformed(ActionEvent e){

}

}

class kuangActionlistener implements ActionListener{

public void actionPerformed(ActionEvent e){

if(e.getSource()==kuang){

String website=kuang.getText().trim();

String prewebsite=website.substring(0, 7);

if(prewebsite.equ"http://")){

try{

je.setPage(website);

je.setEditable(false);

jsp=new JScrollPane(je);

jsp.setLayout(new ScrollPaneLayout());

mianban.add(jsp,BorderLayout.CENTER);

}

catch(IOException E){}

}

else{

}

}

// TODO Auto-generated method stub

new MiniIE();

}

}

使用 ActionListener 即可/

java jmenu 监听_MenuItem添加监听器相关推荐

  1. java jmenu 监听_Java中用得比较顺手的事件监听

    第一次听说监听是三年前,做一个webGIS的项目,当时对Listener的印象就是个"监视器",监视着界面的一举一动,一有动静就触发对应的响应. 一.概述 通过对界面的某一或某些操 ...

  2. java bean 监听_事件监听器?将JavaBeans接通起来的方法

    摘 要 JavaBeans 通 过 事 件( 封 装 着 与 所 发 生 情 况 有 关 的 数 据 的 对 象) 与 其 它 软 件 组 件 进 行 通 讯. 本 文 将 向 你 展 示 如 何 利 ...

  3. java 持久监听blockqueue的变化_Curator目录监听

    Curator目录监听 write by donaldhan, 2018-06-29 09:40 引言 上一篇文章,我们简单看一下Curator的CDRWA相关的构造器,及Curator框架实现,[C ...

  4. 事件监听机制(一)Java事件监听

    事件监听机制(一)Java事件监听 事件监听实现流程 事件对象: 继承自java.util.EventObject对象,由开发者自行定义实现. 事件源: 就是触发事件的源头,不同的事件源会触发不同的事 ...

  5. Java实现监听文件变化的三种方法,推荐第三种

    背景 在研究规则引擎时,如果规则以文件的形式存储,那么就需要监听指定的目录或文件来感知规则是否变化,进而进行加载.当然,在其他业务场景下,比如想实现配置文件的动态加载.日志文件的监听.FTP文件变动监 ...

  6. SpringBatch 监听器之Job监听器(JobExecutionListener)和Step监听器(StepExecutionListener)(五)

    文章目录 一.Job监听器-JobExecutionListener 二.Step监听器-StepExecutionListener 前言:例我们在执行job时候,可能需要在job执行之前预先对一些数 ...

  7. java如何监听以太坊交易

    2019独角兽企业重金招聘Python工程师标准>>> 你可以在web3j库的帮助下使用java轻松监听以太坊交易,但此库无法监听Erc20 Token交易. 要监听Erc20Tok ...

  8. oracle库创建2个监听,Oracle 添加第二个实例 和 监听

    1.添加第二个实例 配置和移植工具 -->Database Configuration Assistant 然后一步一步创建实例(实例名为ORCL2) 创建成功后会在系统的服务里面有个服务名称为 ...

  9. JAVA实现监听U盘插入 扫描文件

    JAVA实现监听U盘插入 想用Java实现监听USB端口是否有移动设备插入,然后操作移动设备内的文件.网站查找资料后发现有个jsr-80的项目,下面先介绍一下什么是JSR:JSR是Java Speci ...

最新文章

  1. Echart常用效果(一)
  2. 简述用 MAT 分析 Android 应用OOM
  3. 【图像分割应用】设备自动化(一)——自动驾驶
  4. AssetBundle
  5. 解除Ubuntu系统的root登录图形界面限制
  6. ES6中 const 关键字
  7. 【汇编语言】王爽 - 内中断复习
  8. linux 脚本调用企业微信_shell或python调用企业微信发送消息(实现报警功能)
  9. python yield
  10. USB2.0学习笔记连载(一):CY7C68013特性简介
  11. 菜鸟学Linux - 用户与用户组基础
  12. 一文总结熵,交叉熵与交叉熵损失
  13. DSP烧写程序的步骤流程
  14. 《三体》读后思考-泰勒展开/维度打击/黑暗森林
  15. 手把手教你使用Python提取快递信息
  16. 电脑桌面计算机图标在哪,电脑计算机图标在哪
  17. 百度~网盘下载速度慢怎么办?完美解决,此账号被限速的完美解决,快100倍
  18. BFU数据结构头歌实验:基于BF算法的病毒感染检测
  19. 电子书沦为“压泡面”神器,其实高端电子书就该从这两个里边选
  20. idea 创建springboot项目的资源文件application.yml的图标显示不正常

热门文章

  1. 祝贺我所在2014年中国智能车未来挑战赛中取得佳绩!
  2. python程序设置头像_利用python实现微信头像加红色数字功能
  3. QWidget中嵌入win32 window
  4. 华为笔记本MateBook B7-410安装ubuntu20.04双系统
  5. C++习题--平方根的迭代公式
  6. 读:Predicting Lymph Node Metastasis Using Histopathological Images Based on Multiple Instance Lear
  7. 神经网络中梯度下降的参数更新公式理解
  8. python自动化UI工具发送QQ消息
  9. vue打包后修改接口地址(私有化部署)
  10. 第 0000 题: 将你的 QQ 头像(或者微博头像)右上角加上红色的数字,类似于微信未读信息数量那种提示效果。