java seticonimage_swing里面的setIconImage 用不了 求解

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

import java.awt.*;

import java.awt.event.*;

import javax.swing.*;

import javax.swing.filechooser.FileFilter;

import java.io.*;

public class note extends JFrame implements ActionListener{

JMenuBar B;

JMenu m1,m2,p4,p5,m3;

JMenuItem p1,p2,p3,p6,mm3;

JCheckBoxMenuItem c1,c2;

JCheckBox c3,c4;

JComboBox z1,z2;

JRadioButtonMenuItem b1,b2,b3;

JTextArea a;

JToolBar jt1;

JLabel jj1,jj2;

File file = null;

boolean isNewfile = true;

JFileChooser filechooser = new JFileChooser();

note()

{

this.setTitle("笔记本beta版 1.0");

this.setSize(520, 350);

//文本

a=new JTextArea();

//a.setText("\n"+"  へ     /| "+"\n"+"  /\7    ∠_/ "+"\n"+"  / │   / / "+"\n"+" │ Z _,< /   /`ヽ "+"\n"+" │     ヽ   /  〉 "+"\n"+"  Y     `  /  / "+"\n"+" イ● 、 ●  ⊂⊃〈  / "+"\n"+"  ()  へ    | \〈 "+"\n"+"  >ー 、_  ィ  │ // "+"\n"+"  / へ   / ノ<| \\ "+"\n"+"  ヽ_ノ  (_/  │// " +"\n"+"  7       |/ " +"\n"+" >―r ̄ ̄`ー―_ 出来吧 皮卡丘");

//菜单

B=new JMenuBar();

//工具

jt1=new JToolBar();

m1=new JMenu("文件(F)");

m1.setMnemonic(*F*);

m2=new JMenu("编辑(E)");

m2.setMnemonic(*E*);

m3=new JMenu("帮助(H)");

m3.setMnemonic(*H*);

p1=new JMenuItem("打开");

p2=new JMenuItem("保存");

p3=new JMenuItem("退出");

mm3=new JMenuItem("查看帮助");

p4=new JMenu("字体");

p5=new JMenu("颜色");

c1=new JCheckBoxMenuItem("粗体");

c2=new JCheckBoxMenuItem("斜体");

c3=new JCheckBox("粗体");

c4=new JCheckBox("斜体");

b1=new JRadioButtonMenuItem("红");

b2=new JRadioButtonMenuItem("黄");

b3=new JRadioButtonMenuItem("蓝");

jj1=new JLabel("字体:");

jj2=new JLabel("字号:");

//获取本地字体加入“z1 的 JComboBox”

GraphicsEnvironment gEnv = GraphicsEnvironment.getLocalGraphicsEnvironment();

String evnfonts[] = gEnv.getAvailableFontFamilyNames();

if(evnfonts!=null && evnfonts.length>0){

z1 = new JComboBox(evnfonts);

}

//字体的z2 JComboBox

String[] str = { "8", "9", "10", "12", "14", "15", "16", "18",

"20", "21", "22", "24", "26", "28", "30", "36", "48", "54",

"72" };

z2=new JComboBox(str);

p4.add(c1);

p4.add(c2);

p5.add(b1);

p5.add(b2);

p5.add(b3);

m1.add(p1);

m1.add(p2);

m1.addSeparator();

m1.add(p3);

m2.add(p4);

m2.add(p5);

m3.add(mm3);

B.add(m1);

B.add(m2);

B.add(m3);

jt1.add(jj1);

jt1.add(z1);

jt1.add(jj2);

jt1.add(z2);

jt1.add(c3);

jt1.add(c4);

this.setIconImage(new ImageIcon("tu\\n.bmp").getImage());

mm3.addActionListener(this);

p1.addActionListener(this);

p2.addActionListener(this);

p3.addActionListener(this);

this.setJMenuBar(B);

//文本框a 加入滑轮滚动

JScrollPane j=new JScrollPane(a);

//当文本a 超出显示范围时出现滚动条

j.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED);

this.add(j);

//边界布局管理器将JToolBarI加入北部(JTextArea a 已默认添加到中部,占了除北部以外其余部分)

this.add(jt1,BorderLayout.NORTH);

this.setLocationRelativeTo(null);

this.setDefaultCloseOperation(3);

this.setVisible(true);

}

public static void main(String[] args) {

new note();

}

public void actionPerformed(ActionEvent aa) {

if (aa.getSource() == mm3) {//关于本记事本

bang();

}

else if(aa.getSource() == p1){//打开

a.requestFocusInWindow();

if (file != null)

filechooser.setSelectedFile(file);

filechooser.addChoosableFileFilter(new JAVAFileFilter("txt"));//实现文件过滤,见下面的JAVAFileFilter类

filechooser.addChoosableFileFilter(new JAVAFileFilter("c"));

filechooser.addChoosableFileFilter(new JAVAFileFilter("cpp"));

filechooser.addChoosableFileFilter(new JAVAFileFilter("sql"));

filechooser.addChoosableFileFilter(new JAVAFileFilter("doc"));

filechooser.addChoosableFileFilter(new JAVAFileFilter("class"));

filechooser.addChoosableFileFilter(new JAVAFileFilter("java"));

int returnVal = filechooser.showOpenDialog(note.this);

if (returnVal == JFileChooser.APPROVE_OPTION) {

file = filechooser.getSelectedFile();

openFile(a);

isNewfile = false; //文件为已保存的

/*statusLabel.setText("当前打开文件:" + file.getAbsoluteFile()

+ " 行:" + Integer.toString(a.getRows()) + " 列:"

+ Integer.toString(a.getColumns()));//设置状态栏显示当前打开文档的路径和文件名

a.setCaretPosition(0);//设置光标的位置在开始 **/

}

}

else if(aa.getSource() == p2){//保存

}

else if(aa.getSource() == p3){//退出

a.requestFocusInWindow();

quitProg();

}

else if (aa.getSource() == p1) {//打开

a.requestFocusInWindow();

}

}

void bang() {//帮助菜单的弹出窗口

Icon help_icon = new ImageIcon("icons//doit.jpg");

String help = "作者很忙,自己解决。";

JOptionPane.showConfirmDialog(null, help, "帮助",

JOptionPane.DEFAULT_OPTION, JOptionPane.INFORMATION_MESSAGE,

help_icon);

}

void quitProg() { //退出菜单的响应

Object[] options = { "确定", "取消" };

int s = JOptionPane.showOptionDialog(null, "退出后会清空未保存内容,是否退出?", "警告!",

JOptionPane.DEFAULT_OPTION, JOptionPane.WARNING_MESSAGE, null,

options, options[0]);

if (s == JOptionPane.YES_OPTION)

System.exit(0);

}

void openFile(JTextArea text) { //打开文件

try {

FileReader fr = new FileReader(file);

int len = (int) file.length();

char[] buffer = new char[len];

fr.read(buffer, 0, len);

fr.close();

text.setText(new String(buffer));

} catch (Exception e) {

e.printStackTrace();

}

}

class JAVAFileFilter extends FileFilter{//实现文件过滤

String ext;

public JAVAFileFilter(String ext)

{

this.ext = ext;

}

public boolean accept(File file)

{

if (file.isDirectory())

return true;

String fileName = file.getName();

int index = fileName.lastIndexOf(*.*);

if (index > 0 && index < fileName.length()-1) {

String extension = fileName.substring(index+1).toLowerCase();

if (extension.equals(ext))

return true;

}

return false;

}

public String getDescription(){

if (ext.equals("txt"))

return "记事本文件(*.txt)";

if (ext.equals("doc"))

return "Word文档(*.doc)";

if (ext.equals("java"))

return "JAVA源文件 (*.java)";

if (ext.equals("class"))

return "JAVA类文件(*.class)";

return "";

}

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值