java对菜单项的监听_我是新手,请问大神java菜单项和下拉列表添加监听和监听方法???有变量和方法就行了...
展开全部
import java.awt.BorderLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import javax.swing.JFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
import javax.swing.SwingUtilities;
public class MenuTester extends JFrame implements ActionListener
{
private static final long serialVersionUID = 1L;
private static final String FILE = "d:/1.txt";
JTextArea textArea;
JScrollPane scrollPane;
public MenuTester ()
{
e68a84e8a2ad3231313335323631343130323136353331333337373562setTitle ("MenuTester");
setLayout (new BorderLayout ());
JMenuBar menuBar = new JMenuBar ();
JMenu[] menu = new JMenu[] { new JMenu ("文件"), new JMenu ("编辑") };
JMenuItem[] menuItem1 = new JMenuItem[] { new JMenuItem ("新建"), new JMenuItem ("打开"), new JMenuItem ("保存"), new JMenuItem ("关闭") };
JMenuItem[] menuItem2 = new JMenuItem[] { new JMenuItem ("复制"), new JMenuItem ("粘贴"), new JMenuItem ("剪切") };
for ( int i = 0; i
{
menuBar.add (menu[i]);
}
for ( int i = 0; i
{
menu[0].add (menuItem1[i]);
}
for ( int i = 0; i
{
menu[1].add (menuItem2[i]);
}
menuItem1[0].addActionListener (this);
menuItem1[1].addActionListener (this);
menuItem1[2].addActionListener (this);
menuItem1[3].addActionListener (this);
setJMenuBar (menuBar);
textArea = new JTextArea ();
scrollPane = new JScrollPane (textArea);
scrollPane.setVisible (false);
add (scrollPane, BorderLayout.CENTER);
setResizable (false);
setSize (800, 600);
setLocationRelativeTo (null);
setDefaultCloseOperation (JFrame.EXIT_ON_CLOSE);
setVisible (true);
}
public static void main ( String[] args )
{
SwingUtilities.invokeLater (new Runnable ()
{
@Override
public void run ()
{
new MenuTester ();
}
});
}
@Override
public void actionPerformed ( ActionEvent e )
{
String command = e.getActionCommand ();
if ("新建".equals (command))
{
scrollPane.setVisible (true);
validate ();
}
else if ("关闭".equals (command))
{
scrollPane.setVisible (false);
textArea.setText ("");
validate ();
}
else if ("打开".equals (command))
{
scrollPane.setVisible (true);
validate ();
try
{
FileReader fr = new FileReader (FILE);
char[] cs = new char[1];
while (-1 != ( fr.read (cs) ))
{
textArea.append (new String (cs));
}
fr.close ();
}
catch (Exception e1)
{
e1.printStackTrace ();
}
}
else if ("保存".equals (command))
{
try
{
FileWriter fw = new FileWriter (FILE);
fw.write (textArea.getText ());
fw.flush ();
fw.close ();
}
catch (IOException e1)
{
e1.printStackTrace();
}
}
}
}
java对菜单项的监听_我是新手,请问大神java菜单项和下拉列表添加监听和监听方法???有变量和方法就行了...相关推荐
- 从Java新手到大神需要学哪些知识?
互联网的高速发展,诞生了越来越多的新兴行业,无论行业如何发展,Java一直都是使用频率最高的编程语言之一,自然也就吸引了越来越多的人加入行业.那么,Java新手到大神可有什么好的学习路线?下面,小千就 ...
- java如何保证类不被回收_垃圾回收机制保证了Java程序不会出现内存溢出。( )
[简答题]1.激素(名词解释) [单选题]6.下列哪种情况下可引起ADH分泌增加 [判断题]在Java中使用String类型的实例对象表示一个字符串.( ) [判断题]static关键字可以修饰成员变 ...
- java数组有跨类建立对象_必会的 55 个 Java 性能优化细节!一网打尽!
程序员的成长之路互联网/程序员/成长/职场 关注 阅读本文大概需要 10 分钟. 来源:https://yq.aliyun.com/articles/662001 在 Java 程序中,性能问题的大部 ...
- java 反射获取属性名和值_面试官这样问我Java反射原理,我刚好都会
上周我投递出了简历,岗位是java后端开发工程师.这周美团面试官给我进行了面试,面试过程中他问了Java的反射原理.(不得不夸一句,美团的效率真高,上午面完一面,晚上二面马上安排上了.) 无论什么Ja ...
- java在线学习网站源码_我是怎么开发一个小型java在线学习网站的
2016/1/27 11:55:14 我是怎么开发一个小型java在线学习网站的 一直想做一个自己的网站(非博客),但是又不知道做什么内容的好,又一次看到了w3schools,就萌发了开发一个在线ja ...
- java 8进制串转中文_老杜带你学Java【第六课】
上期链接:老杜带你学Java[第五课] 01 写在前面 欢迎来到杜老师的「零基础学Java」课堂~今后,我们就是Java软件工程师了.(此处应该有掌声???)本专题为<零基础学Java>专 ...
- Java开源商城源码推荐,从菜鸡到大神,永远绕不开的商城系统
每个Java程序员,从懵逼菜鸡,再到懵懂菜鸟,再到小鸟,大鸟,最后到技术大神,始终绕不开商城系统,里面蕴含了大量的业务,涉及到了大量的知识点和解决方案. 今天介绍一款Java开源商城源码 xmall- ...
- java技术分享主题_Java开发入门:适合新手练手的Java项目(附源码下载)
Java作为一门古老的语言,已有20年左右的历史,这在发展日新月异的技术圈可以说是一个神话.虽然不少人曾抱怨Java语言就像老太太的裹脚布,又臭又长,有时写了500行都不能表达程序员的意图. 但从市场 ...
- fiddler启动文件_如何成为Fiddler大神,请看这里!
原标题:如何成为Fiddler大神,请看这里! 什么是Fiddler? Fiddler是一个HTTP/HTTPS协议调试代理工具, 它能够记录客户端和服务器之间的所有 HTTP/请求,可以针对特定的H ...
最新文章
- 6个用于文本分类的最新开源预训练模型(NLP必备)
- 力扣(LeetCode)258. 各位相加
- MySQL 服务器变量 数据操作DML-视图
- MapReduce分析NCDC 年气象数据最低温度与最高温度
- 【征稿通知】CCF第37届中国计算机应用大会 CCF NCCA 2022
- Redis 开发与运维
- 【华为云技术分享】浅谈服务化和微服务化(上)
- 系统集成项目管理工程师证书有什么用?
- CODESYS Visualization
- P3110 [USACO14DEC]驮运Piggy Back-最短路,spfa
- 2003年高考语文全国最高分_最新消息!2020高考语文数学题型大变!全国卷或有多套题...
- 符合 V.25TER 的 AT 命令
- SEO每天都是动态变化的,你要关注什么?
- 使用了可能未初始化的本地指针变量“xxx”
- Zookeeper连接异常 Got ping response for sessionid 2021-06-30
- 辗转相除法(欧几里得算法)
- Web前端:JS社区推荐的最佳JavaScript框架
- linux 文件恢复 软件,EasyRecovery轻松实现Linux数据恢复
- vue + 微信获取用户信息
- 初次模拟小鲨鱼记账本1.0
热门文章
- nacis服务注册原理_HwServiceManager篇Android10.0 HwBinder通信原理(五)
- ubuntu16.04 gcc降级到4.8
- 计算机英语讲课笔记(2020-6-23)
- 英语学习笔记2019-12-06
- 向量的大小和方向,零向量的方向_3
- 7.边缘检测:2D运算——Canny边缘原理、Canny边缘检测器、Canny-Matlab实战_2
- android 打印流程图,Android实现Activities之间进行数据传递的方法
- 2017.9.14 仪仗队 思考记录
- 2017.7.19 Race 思考记录
- Coding the Matrix Week 3 The Matrix 矩阵