java jmenu 监听_MenuItem添加监听器
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添加监听器相关推荐
- java jmenu 监听_Java中用得比较顺手的事件监听
第一次听说监听是三年前,做一个webGIS的项目,当时对Listener的印象就是个"监视器",监视着界面的一举一动,一有动静就触发对应的响应. 一.概述 通过对界面的某一或某些操 ...
- java bean 监听_事件监听器?将JavaBeans接通起来的方法
摘 要 JavaBeans 通 过 事 件( 封 装 着 与 所 发 生 情 况 有 关 的 数 据 的 对 象) 与 其 它 软 件 组 件 进 行 通 讯. 本 文 将 向 你 展 示 如 何 利 ...
- java 持久监听blockqueue的变化_Curator目录监听
Curator目录监听 write by donaldhan, 2018-06-29 09:40 引言 上一篇文章,我们简单看一下Curator的CDRWA相关的构造器,及Curator框架实现,[C ...
- 事件监听机制(一)Java事件监听
事件监听机制(一)Java事件监听 事件监听实现流程 事件对象: 继承自java.util.EventObject对象,由开发者自行定义实现. 事件源: 就是触发事件的源头,不同的事件源会触发不同的事 ...
- Java实现监听文件变化的三种方法,推荐第三种
背景 在研究规则引擎时,如果规则以文件的形式存储,那么就需要监听指定的目录或文件来感知规则是否变化,进而进行加载.当然,在其他业务场景下,比如想实现配置文件的动态加载.日志文件的监听.FTP文件变动监 ...
- SpringBatch 监听器之Job监听器(JobExecutionListener)和Step监听器(StepExecutionListener)(五)
文章目录 一.Job监听器-JobExecutionListener 二.Step监听器-StepExecutionListener 前言:例我们在执行job时候,可能需要在job执行之前预先对一些数 ...
- java如何监听以太坊交易
2019独角兽企业重金招聘Python工程师标准>>> 你可以在web3j库的帮助下使用java轻松监听以太坊交易,但此库无法监听Erc20 Token交易. 要监听Erc20Tok ...
- oracle库创建2个监听,Oracle 添加第二个实例 和 监听
1.添加第二个实例 配置和移植工具 -->Database Configuration Assistant 然后一步一步创建实例(实例名为ORCL2) 创建成功后会在系统的服务里面有个服务名称为 ...
- JAVA实现监听U盘插入 扫描文件
JAVA实现监听U盘插入 想用Java实现监听USB端口是否有移动设备插入,然后操作移动设备内的文件.网站查找资料后发现有个jsr-80的项目,下面先介绍一下什么是JSR:JSR是Java Speci ...
最新文章
- Echart常用效果(一)
- 简述用 MAT 分析 Android 应用OOM
- 【图像分割应用】设备自动化(一)——自动驾驶
- AssetBundle
- 解除Ubuntu系统的root登录图形界面限制
- ES6中 const 关键字
- 【汇编语言】王爽 - 内中断复习
- linux 脚本调用企业微信_shell或python调用企业微信发送消息(实现报警功能)
- python yield
- USB2.0学习笔记连载(一):CY7C68013特性简介
- 菜鸟学Linux - 用户与用户组基础
- 一文总结熵,交叉熵与交叉熵损失
- DSP烧写程序的步骤流程
- 《三体》读后思考-泰勒展开/维度打击/黑暗森林
- 手把手教你使用Python提取快递信息
- 电脑桌面计算机图标在哪,电脑计算机图标在哪
- 百度~网盘下载速度慢怎么办?完美解决,此账号被限速的完美解决,快100倍
- BFU数据结构头歌实验:基于BF算法的病毒感染检测
- 电子书沦为“压泡面”神器,其实高端电子书就该从这两个里边选
- idea 创建springboot项目的资源文件application.yml的图标显示不正常
热门文章
- 祝贺我所在2014年中国智能车未来挑战赛中取得佳绩!
- python程序设置头像_利用python实现微信头像加红色数字功能
- QWidget中嵌入win32 window
- 华为笔记本MateBook B7-410安装ubuntu20.04双系统
- C++习题--平方根的迭代公式
- 读:Predicting Lymph Node Metastasis Using Histopathological Images Based on Multiple Instance Lear
- 神经网络中梯度下降的参数更新公式理解
- python自动化UI工具发送QQ消息
- vue打包后修改接口地址(私有化部署)
- 第 0000 题: 将你的 QQ 头像(或者微博头像)右上角加上红色的数字,类似于微信未读信息数量那种提示效果。