`
czwangelo
  • 浏览: 73122 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

开始写java博客了,希望能够坚持下去

阅读更多
java 代码
  1. package com.examples;   
  2.   
  3. import java.awt.BorderLayout;   
  4. import java.awt.FlowLayout;   
  5. import java.awt.Frame;   
  6. import java.awt.event.ActionEvent;   
  7. import java.awt.event.ActionListener;   
  8. import java.awt.event.WindowAdapter;   
  9. import java.awt.event.WindowEvent;   
  10.   
  11. import javax.swing.JButton;   
  12. import javax.swing.JPanel;   
  13.   
  14.   
  15.   
  16. public class ToolBarFrame2 extends Frame {   
  17.     JButton cutButton,copyButton,pasteButton;   
  18.     JButton javaButton,macButton,motifButton,winButton;   
  19.   
  20.     public ToolBarFrame2() {   
  21.         super("ToolBar Example ( Swing )");   
  22.         // TODO Auto-generated constructor stub   
  23.         setSize(450250);   
  24.         addWindowListener(new WindowAdapter() {   
  25.             @Override  
  26.             public void windowClosing(WindowEvent arg0) {   
  27.                 // TODO Auto-generated method stub   
  28.                 System.exit(0);   
  29.             }   
  30.         });   
  31.         JPanel toolbar = new JPanel();   
  32.         toolbar.setLayout(new FlowLayout(FlowLayout.LEFT));   
  33.         cutButton = new JButton("Cut");   
  34.         ActionListener printListener = new ActionListener(){   
  35.   
  36.             public void actionPerformed(ActionEvent ae) {   
  37.                 // TODO Auto-generated method stub   
  38.                 System.out.println(ae.getActionCommand());   
  39.             }   
  40.                
  41.                
  42.         };   
  43.         cutButton.addActionListener(printListener);   
  44.         toolbar.add(cutButton);   
  45.            
  46.         copyButton = new JButton("Copy");   
  47.         copyButton.addActionListener(printListener);   
  48.         toolbar.add(copyButton);   
  49.            
  50.         pasteButton = new JButton("Paste");   
  51.         pasteButton.addActionListener(printListener);   
  52.         toolbar.add(pasteButton);   
  53.            
  54.         add(toolbar,BorderLayout.NORTH);   
  55.            
  56.         JPanel lnfPanel = new JPanel();   
  57.         LnFListener lnfListener = new LnFListener(this);   
  58.         macButton = new JButton("Mac");   
  59.         macButton.addActionListener(lnfListener);   
  60.         lnfPanel.add(macButton);   
  61.            
  62.         javaButton = new JButton("Metal");   
  63.         javaButton.addActionListener(lnfListener);   
  64.         lnfPanel.add(javaButton);   
  65.            
  66.         motifButton = new JButton("Motif");   
  67.         motifButton.addActionListener(lnfListener);   
  68.         lnfPanel.add(motifButton);   
  69.            
  70.         winButton = new JButton("Windows");   
  71.         winButton.addActionListener(lnfListener);   
  72.         lnfPanel.add(winButton);   
  73.         add(lnfPanel,BorderLayout.SOUTH);   
  74.            
  75.            
  76.     }   
  77.     public static void main(String[] args) {   
  78.         ToolBarFrame2 tf1 = new ToolBarFrame2();   
  79.         tf1.setVisible(true);   
  80.     }   
  81.   
  82. }   
LnFListener代码
  1. package com.examples;   
  2.   
  3. import java.awt.Frame;   
  4. import java.awt.event.ActionEvent;   
  5. import java.awt.event.ActionListener;   
  6. import javax.swing.*;   
  7.   
  8. public class LnFListener implements ActionListener {   
  9.     Frame frame;   
  10.   
  11.     public LnFListener(Frame frame) {   
  12.         super();   
  13.         // TODO Auto-generated constructor stub   
  14.         this.frame = frame;   
  15.     }   
  16.   
  17.     public void actionPerformed(ActionEvent e) {   
  18.         // TODO Auto-generated method stub   
  19.         String lnfName = null;   
  20.         String actionCommand = e.getActionCommand();   
  21.         System.out.println(actionCommand);   
  22.         if(actionCommand.equals("Mac")){   
  23.             //lnfName="com.apple.mrj.swing.MacLookAndFeel";   
  24.             lnfName="com.apple.mrj.swing.MacLookAndFeel";   
  25.         }else if(actionCommand.equals("Metal")){   
  26.             lnfName="javax.swing.plaf.metal.MetalLookAndFeel";   
  27.         }else if(actionCommand.equals("Motif")){   
  28.             lnfName = "com.sun.java.swing.plaf.motif.MotifLookAndFeel";   
  29.         }else if(actionCommand.equals("Windows")){   
  30.             lnfName = "com.sun.java.swing.plaf.windows.WindowsLookAndFeel";   
  31.         }else{   
  32.             System.err.print("Unjfj");   
  33.             return;   
  34.         }   
  35.         try {   
  36.             UIManager.setLookAndFeel(lnfName);   
  37.             SwingUtilities.updateComponentTreeUI(frame);   
  38.         } catch (ClassNotFoundException e1) {   
  39.             // TODO Auto-generated catch block   
  40.             e1.printStackTrace();   
  41.         } catch (InstantiationException e1) {   
  42.             // TODO Auto-generated catch block   
  43.             e1.printStackTrace();   
  44.         } catch (IllegalAccessException e1) {   
  45.             // TODO Auto-generated catch block   
  46.             e1.printStackTrace();   
  47.         } catch (UnsupportedLookAndFeelException e1) {   
  48.             // TODO Auto-generated catch block   
  49.             e1.printStackTrace();   
  50.         }   
  51.   
  52.     }   
  53.   
  54. }   

我发现一个问题了,

当我点击:"Mac"按钮的时候,却会出错,报的错是:

  1. Mac   
  2. java.lang.ClassNotFoundException: com.apple.mrj.swing.MacLookAndFeel   
  3.     at java.net.URLClassLoader$1.run(Unknown Source)   
  4.     at java.security.AccessController.doPrivileged(Native Method)   
  5.     at java.net.URLClassLoader.findClass(Unknown Source)  

我想这里的的原因是在于"com.apple.mrj.swing.MacLookAndFeel";各位有谁知道,这个错误该怎么改吗?

 

分享到:
评论
5 楼 devworks 2007-02-09  
在非Mac平台下不能使用Mac Look and feel
4 楼 magice 2007-02-09  
怎么没有语言性质的东西,全是代码哦~
3 楼 jianfeng008cn 2007-02-09  
希望注意帖子的质量!要交流可以啊,是不是应该言之有物呢,你要是发在自己的blog上,我是不会有意见的。
2 楼 czwangelo 2007-02-09  
我以前是做web开发的,现在想学学GUI开发,所以就在这里随便写写了,非常希望跟大家多多交流
1 楼 ouspec 2007-02-09  
这段代码什么意思?

相关推荐

    Java心得 学JAVA必看

    有了明确的目标,才能制定出合适的学习计划,并且更有动力坚持下去。 #### 24. 正确认识自己的水平 正确认识自己的技术水平是非常重要的。不要过高估计自己的能力,也不要低估自己的潜力。可以通过参与在线编程比赛...

    Java学习路线,Android学习路线,Java全套路线视频下载连接

    ### Java学习路线与Android学习路线详解 #### 一、Java学习路线概述 Java作为一种广泛使用的编程语言,在软件开发领域有着举足轻重的地位。对于初学者来说,掌握正确的学习...希望每位学习者都能坚持下去,不断进步!

    java初学者忠告

    设定合理的学习目标,保持积极的态度,即使进展缓慢,也要坚持下去,因为编程能力的提升往往需要时间积累。 #### 5. **避免过度依赖其他语言经验** 尽管有些初学者可能有C++或其他编程语言的基础,但在学习Java时...

    java版飞机大战源码-interview:写在2019年后的蚂蚁、头条、拼多多的面试总结

    其中就有一条是保持一周写一篇博客,奈何中间因为各种原因没能坚持下去。细细想来,主要是自己没能真正静下来心认真投入到技术的研究和学习,那么为什么会这样?说白了还是因为没有确定目标或者目标不

    在我看来学习c#的方法与心得 希望大家能够借鉴

    总之,在C#的学习过程中,关键是要找到适合自己的学习方法,并坚持下去。随着时间的推移,你会发现自己的编程能力有了显著提升。这种学习方法不仅适用于C#,对于其他编程语言(如Java、ASP.NET)也同样适用。希望每...

    程序员从初级到高级的秘诀(经验之谈)

    设定目标并坚持下去 明确职业发展目标,并制定实现这些目标的具体计划。无论是短期目标(如掌握一种新的编程语言)还是长期目标(成为某个领域的专家),都需要坚持不懈地努力。在这个过程中可能会遇到挫折和困难...

    给C++初学者的忠告

    - **解释**:学习C++的过程中难免会遇到挫折,但关键是要坚持下去。 - **建议**:设定明确的学习目标,并为达到这些目标而努力;同时也可以参加一些社区活动或技术交流群组,与其他开发者交流经验,共同进步。 ####...

Global site tag (gtag.js) - Google Analytics