因为我长期看小说,而且是用电脑看,感觉有时候这个屏幕太亮了,所以想开发一个可以调节背景色,字体颜色,以及滚动条,菜单条颜色的记事本程序,但因为技术所限,写不出来,所以一直都是编写个html文件,设置背景色,字体色,但是滚动条的颜色还是没变。跪求各位大大给个java 编写的  能够调节背景色,字体色,滚动条,菜单条颜色 的记事本程序的代码

解决方案 »

  1.   

    swing嘛。IO流嘛嘛
    其实你要求的记事本程序挺简单的。
    不过你看长期看小说,,那
      

  2.   

    Java写这玩意很不靠谱,都是VC或者Delphi写。
      

  3.   

    Swing+IO,很简单的…上网找找教程…
      

  4.   

    http://hi.baidu.com/freish/blog/item/21a604f7c0271b28730eec61.html
    这个真的可以
      

  5.   

    看了贴,自己做了个,很多功能待完善,高手请指教!package wilds;
    import java.awt.BorderLayout;
    import java.awt.Color;
    import java.awt.event.ActionEvent;
    import java.awt.event.ActionListener;
    import java.awt.event.KeyAdapter;
    import java.awt.event.KeyEvent;
    import java.awt.event.MouseAdapter;
    import java.awt.event.MouseEvent;
    import java.awt.event.WindowAdapter;
    import java.awt.event.WindowEvent;
    import java.io.BufferedReader;
    import java.io.BufferedWriter;
    import java.io.File;
    import java.io.FileReader;
    import java.io.FileWriter;
    import java.io.IOException;
    import javax.swing.JColorChooser;
    import javax.swing.JFileChooser;
    import javax.swing.JFrame;
    import javax.swing.JMenu;
    import javax.swing.JMenuBar;
    import javax.swing.JMenuItem;
    import javax.swing.JOptionPane;
    import javax.swing.JPopupMenu;
    import javax.swing.JScrollPane;
    import javax.swing.JTextArea;
    import javax.swing.UIManager;public class TestNetBook {
        JFrame fram;
        JTextArea ta;
        JMenu menu1,menu2,menu3,menu4;
        JMenuBar menub;
        JMenuItem mi1,mi2,mi3,mi4,mi5,mi6,mi7,mi8,mi9,mi10,menubc;
        JScrollPane scroPane;
        JPopupMenu pmenu;
        boolean bool=false;//判断文件区是否被更改过的记录;    
        TestNetBook(){
        fram=new JFrame("无标题-记事本");
        ta=new JTextArea();
        scroPane=new JScrollPane(ta);//设置一个滚动面板,把ta放入其中;
        menub=new JMenuBar();
        pmenu=new JPopupMenu();//弹出菜单的初始化;
        menu1=new JMenu("文件(F)");
        menu2=new JMenu("编辑(E)");
        menu4=new JMenu("设置(s)");
        menu3=new JMenu("帮助(H)");   
        mi1=new JMenuItem("新建(N)  Ctrl+N");
        mi2=new JMenuItem("打开(O)  Ctrl+O");
        mi3=new JMenuItem("保存(S)  Ctrl+S");
        mi4=new JMenuItem("退出(X)");
        mi5=new JMenuItem("剪切(T)  Ctrl+X");
        mi6=new JMenuItem("复制(C)  Ctrl+C");
        mi7=new JMenuItem("粘贴(V)  Ctrl+V");  
        mi8=new JMenuItem("关于(H)...");   
        mi9=new JMenuItem("字体颜色(C)");
        mi10=new JMenuItem("自动换行(L)");
        menubc=new JMenuItem("背景颜色"); 
        menub.add(menu1);
        menub.add(menu2);
        menub.add(menu4);
        menub.add(menu3);   
        menu1.add(mi1);
        menu1.add(mi2);
        menu1.add(mi3);
        menu1.add(mi4);   
        menu2.add(mi5);
        menu2.add(mi6);
        menu2.add(mi7);   
        menu3.add(mi8);   
        menu4.add(mi9);
        menu4.add(mi9);
        menu4.add(mi10);
        menu4.add(menubc);   
        pmenu=menu2.getPopupMenu();
       fram.add(menub,BorderLayout.NORTH);
       fram.add(scroPane);
       fram.setSize(500,500);
       fram.setVisible(true);
       fram.addWindowListener(new WindowAdapter() {
                @Override
             public void windowClosing(WindowEvent e){
                isSavefile();
                System.exit(0);
            }
         }
         );
         ta.addKeyListener(new KeyAdapter(){
                @Override
                public void keyTyped(KeyEvent e){
                bool=true;
                }
             });
         ta.addMouseListener(new MouseAdapter(){
                @Override
                public void mouseReleased(MouseEvent e){
                if(e.getButton()==MouseEvent.BUTTON3){
                    pmenu.show(menu2, e.getX(),e.getY());
                    }
                }
                @Override
                public void mouseClicked(MouseEvent e){
                if(e.getButton()==MouseEvent.BUTTON1)
                    pmenu.setVisible(false);
                }
            });            
            mi1.addActionListener(new ActionListener(){
                public void actionPerformed(ActionEvent e) {              
                    if(bool){
                    isSavefile();
                    ta.setText("");
                    }
                    else
                    {ta.setText("");}             
                  bool=true;
                }
            });
            mi2.addActionListener(new ActionListener(){
                public void actionPerformed(ActionEvent e) {    
                    if(bool){
                        isSavefile();
                        ta.setText("");
                        openFile();
                   }             
                else{openFile();}
                                         
                }       
            });
            mi3.addActionListener(new ActionListener(){
                public void actionPerformed(ActionEvent e) {
                   saveFile();
              }
            });
             mi4.addActionListener(new ActionListener(){
                public void actionPerformed(ActionEvent e){
                     isSavefile();
                     System.exit(0);
                }
            });
           mi5.addActionListener(new ActionListener(){          
                public void actionPerformed(ActionEvent e) {
                    ta.cut();
                    bool=true;
                }
           });
           mi5.addMouseListener(new MouseAdapter(){
                @Override
               public void mouseClicked(MouseEvent e){
               if(e.getButton()==MouseEvent.BUTTON1)
                   pmenu.setVisible(false);
               }
           });              
           mi6.addActionListener(new ActionListener(){
                @Override
              public void actionPerformed(ActionEvent e) {
                    ta.copy();
                    bool=true;
                }
           });
           mi6.addMouseListener(new MouseAdapter(){
             @Override
                public void mouseClicked(MouseEvent e){
                if(e.getButton()==MouseEvent.BUTTON1)
                    pmenu.setVisible(false);
                }
          });
           mi7.addActionListener(new ActionListener(){                 
                public void actionPerformed(ActionEvent e) {
                    ta.paste();
                    bool=true;
                }
           });
          mi7.addMouseListener(new MouseAdapter(){
             @Override
                public void mouseClicked(MouseEvent e){
                if(e.getButton()==MouseEvent.BUTTON1)
                    pmenu.setVisible(false);
                }
          });
          menubc.addActionListener(new ActionListener(){
    @Override
    public void actionPerformed(ActionEvent e) {
    JColorChooser jcc=new JColorChooser();
         Color color=jcc.showDialog(null,"backgroundColorChooser",Color.white);
         ta.setBackground(color);
    }
          });
           mi8.addActionListener(new ActionListener(){
                public void actionPerformed(ActionEvent e) {               
                    JOptionPane.showMessageDialog(null,"Java学习—请上官网!","wild", JOptionPane.INFORMATION_MESSAGE);
                }
           });
           mi9.addActionListener(new ActionListener(){
    @Override
        public void actionPerformed(ActionEvent e) {
    JColorChooser jcc=new JColorChooser();
         Color color=jcc.showDialog(null,"wordColorChooser",Color.white);
         ta.setForeground(color);
    }
           });
           mi10.addActionListener(new ActionListener(){
    @Override
    public void actionPerformed(ActionEvent e) {
    boolean bool=ta.getLineWrap();
    if(bool){
    ta.setLineWrap(false);
    }
    else {
    ta.setLineWrap(true);
    ta.setWrapStyleWord(true);
        }
       }
           });
            
        }
        public void openFile(){
                       JFileChooser fc=new JFileChooser();             
                int n=fc.showOpenDialog(null);
                if(n==JFileChooser.APPROVE_OPTION){
                   File file=fc.getSelectedFile();             
                   bool=true;
                  try{
                      fram.setTitle(file.getName()+"-记事本");
                    FileReader rf=new FileReader(file);
                     BufferedReader in=new BufferedReader(rf);
                     String s=null;
                      while((s=in.readLine())!=null)
                      {ta.append(s+"\n");}
                          //rf.close();
                          in.close();
                     }
                    catch(IOException ee){ee.printStackTrace();}
                   }
                else{}
        }
        public void saveFile(){
                   JFileChooser fc1=new JFileChooser();
                    int n=fc1.showSaveDialog(null);
                    if(n==JFileChooser.APPROVE_OPTION){
                        File file=fc1.getSelectedFile();
                    try{               
                         FileWriter tofile=new FileWriter(file+".txt");
                        BufferedWriter out=new BufferedWriter(tofile);
                        out.write(ta.getText());
                        //tofile.close();
                        out.close();
                        }             
                    catch(IOException ep){System.out.print(ep);}                  
                   }
                    else {}
        }    public void isSavefile(){
            if(!bool){}
            else{     
                int select=JOptionPane.showConfirmDialog(null,"文件已更改是否保存","提示",JOptionPane.INFORMATION_MESSAGE,
                            JOptionPane.YES_NO_OPTION);
                 switch(select){
                     case JOptionPane.YES_OPTION:
                         saveFile();
                         break;
                     case JOptionPane.NO_OPTION:    
                 }   
            }
     } 
        public static void main(String[] args) {
            new TestNetBook();
             try {
                UIManager.setLookAndFeel("com.jtattoo.plaf.bernstein.BernsteinLookAndFeel");
            } catch (Exception e) {
                e.printStackTrace();
            }
        }}