问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

java awt 中的 问题

发布网友 发布时间:1小时前

我来回答

4个回答

热心网友 时间:2024-10-20 09:37

因为frame 和 textArea都是局部变量,因此,只能在匿名内部类中引用。如:

itemSave.addActionListener(new ActionListener ()
{
public void actionPerformed(ActionEvent ex)
{ ...
fileContent= textArea.getText().getBytes();
...

}
} );
如果不想用匿名内部类,就比较麻烦了,必须将frame和textArea声明成成员变量。
第一种方法是,把frame和textArea声明成静态,然后在SaveActionListener 中引用,这种写法失去了内部类的意义。
第二种方法是声明成非静态,但前提是你的main里面必须要创建该对象的实例。
所以还是用匿名的好一些。

热心网友 时间:2024-10-20 09:37

final Frame frame =new Frame("Text");
final TextArea textArea=new TextArea();
去掉final应该就可以了吧

热心网友 时间:2024-10-20 09:38

import java.awt.Frame;
import java.awt.TextArea;

热心网友 时间:2024-10-20 09:39

代码我调试好了,你在研究下有那里不一样.

欢迎光临我的论坛 p-mind.cn
//新做的工具 myeclipse 注册机 , 也许对你有用
http://p-mind.cn/bbs/viewthread.php?tid=264

package com.test;

import java.awt.Dimension;
import java.awt.FileDialog;
import java.awt.Frame;
import java.awt.Menu;
import java.awt.MenuBar;
import java.awt.MenuItem;
import java.awt.TextArea;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.io.FileOutputStream;

public class RunCase {

public static void main(String[] args) {
final Frame frame = new Frame("Text");
final TextArea textArea = new TextArea();
//改 创建菜单应有MenuBar 作为容器,并添加Menu 实例(一个菜单项)
final MenuBar bar = new MenuBar();
Menu mu = new Menu("文件");
MenuItem item = new MenuItem("Save");
mu.add(item);
bar.add(mu);
SaveActionListener litSave = new SaveActionListener(frame,textArea);
mu.addActionListener(litSave);//给SAVE菜单注册事件
frame.addWindowListener(new WindowAdapter(){
@Override
public void windowClosing(WindowEvent e) {
// TODO Auto-generated method stub
super.windowClosing(e);
System.exit(0);
}
});

frame.setLocationRelativeTo(null);
frame.setSize(new Dimension(400,300));//窗体大小
frame.setMenuBar(bar);//把MenuBar设置到窗体中去
frame.setVisible(true);//显示窗体
}
//内部类在main 函数中使用要用static 修饰
static class SaveActionListener implements ActionListener {
//修改处
private Frame frame;
private TextArea textArea;

public SaveActionListener(Frame frame,TextArea textArea){
this.frame = frame;
this.textArea = textArea;
}

public void actionPerformed(ActionEvent ex) {
FileDialog fileSave = new FileDialog(frame, "Save text",
FileDialog.SAVE);

fileSave.setVisible(true);
try {
String fileName2 = fileSave.getDirectory() + fileSave.getFile();
FileOutputStream fileOutput = new FileOutputStream(fileName2);

byte[] fileContent = new byte[10 * 1024];
fileContent = textArea.getText().getBytes();
fileOutput.write(fileContent);

} catch (Exception exx) {
exx.getStackTrace();
}
}
}
}
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
求好看的重生文,不要重生回到以前的,女主性格不能软弱无能,不能太... 求双洁的娱乐圈小说(男女主或攻受一定要都身心干净,并且要重生的 )可 ... ...文笔一定要好 重生娱乐圈什么的都无所谓 一定要是婚后的! 浙江高考成绩理科专科排名查询怎么查啊,最好给网站谢谢 各高校是怎么依照高考成绩录取 四不像是什么样的动物 孔家后人为什么要把“四不像”刻在孔府内的照壁上? 中国龙和外国龙的区别西方龙的区别 山东省烟台市高新技术产业开发区的车牌号是什么? 电脑重装系统按个键-(电脑重装系统按个键没反应) java label和textarea一起放入面板中怎么显示不出来呢? 石盆自然村村情概况 石盆村在哪里 石盆村位于哪里 石盆村江西定南县天九镇下辖村 萧蔷晒骑马照 年过半百依旧面容姣好 身材似少女 我水浒Q传的二级密码忘了 老被人盗谁能帮我找回来? 水浒q传忘记了通行证号怎么才能找回来? 水浒Q传我忘了账号可以拿回吗? 忘记账号可否用邮箱取回 浙江宇翔外国语专修学院浙江宇翔外院的品牌专业 义乌工商学院好还是浙江宇翔外院好 如何回答法律咨询 有哪些技巧 浙江宇翔外国语专修学院师资力量 浙江宇翔外国语专修学院外语特色 ...熏的时间长点了,有点苦了,有什么办法可以解救吗,谢谢了! ...乙两地之间有两条输电线,已知输电线每米长的电阻为0.01欧 ...乙两地之间有两条输电线,已知输电线每米长的电阻为0.01Ω.急求_百 ... ...乙两地之间有两条输电线,已知输电线每米长的电阻为O. 01Ω.现输... ...乙两地之间有两条输电线,已知输电线每米长的电阻为0.01Ω.现输电... 肾结实在吃的方面要注意什么,? 得了胆结石的女性病人,应该在饮食方面注意些什么?怎样才能减轻疼痛... 萧山机场附近住宿攻略,萧山景区攻略住宿酒店价格 江苏萧山机场附近有什么比较靠谱的酒店?求推荐 法国革命的历史意义是什么 萧山机场附近的酒店有没有安全便宜一点的?谢谢了,大神帮忙啊_百度知 ... 萧山机场附近的住宿场所 萧山机场附近有哪些酒店300元左右的 500也可 因为晚上才到杭州 所以... 黑色T恤搭配什么裤子鞋子更好看? 黑色小西装搭什么 裤子 鞋子好看呢?还有包包.结婚穿所以正式点.大家帮... ...我不是很懂车,有人知道这车都有什么优缺点么?1.3排量的现在多少能... ...还是纯一色打底衫 ,黑色裤子黑色鞋子 跪求,有品位的进啊 ...背部按摩后也是起豆了,美容院说是排毒,到底是怎么回事 竣工资料包括哪些内容 在家如何供奉观音菩萨 ...代码证年检,需要带什么资料?在哪里办理?电话是什么?拜托各位... 设置在哪里下载? 粉色大衣配什么样的牛仔裤好看? ...记得90年代的时候一个叫金义也不知道是金什么的奶么?类似于乐百氏的... ...木碳?在市场买几斤碳回家放着就行?没必要花太贵的钱买专卖店的什么...