亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? editordemo.java

?? java寫的,自己編寫的記事本程序(個人認為功能還是挺全的哦) 有需要的朋友可以下來看看!!!
?? JAVA
字號:
package 記事本;

import java.awt.*;
import java.awt.event.*;
import java.io.*;
import java.util.Date;

import javax.swing.*;
import javax.swing.text.*;

//簡單的文本編輯器

public class EditorDemo extends JFrame {
	JMenuItem jnew,jopen,jsave,jcut,jcopy,jpaste,jabout,jexit,jlook;
	JTextArea textPane = new JTextArea(); //文本窗格,編輯窗口
	JLabel statusBar = new JLabel(); //狀態欄
	JFileChooser filechooser = new JFileChooser(); //文件選擇器
	
	JComboBox jc1,jc2,jc3,jc4,jc5;
	String ziti="宋體";
	int zihao=14;
	int style=Font.PLAIN;
	String s2[]={"Plain","Bold","Italic","Bold+Italic"};
	String s1[]={"8","10","12","14","16","18","20","22","24"};
	String s3[]={"宋體","黑體","隸書","楷體_GB2312"};
	String s4[]={"Black","Green","Cyan","red","LightGray","Orange","Pink","Yellow"};
	String s5[]={"Black","Green","Cyan","red","LightGray","Orange","Pink","Yellow"};

	public EditorDemo() { //構造函數
		super("簡單的文本編輯器");  //調用父類構造函數
		

		Action[] actions =  //Action數組,各種操作命令
			{
				new NewAction(),
				new OpenAction(),
				new SaveAction(),
				new CutAction(),
				new CopyAction(),
				new PasteAction(),
				new AboutAction(),
				new ExitAction()
			};
		jnew=new JMenuItem(actions[0]);
		jopen=new JMenuItem(actions[1]);
		jsave=new JMenuItem(actions[2]);//設置快捷鍵
		jcut=new JMenuItem(actions[3]);
		jcopy=new JMenuItem(actions[4]);
		jpaste=new JMenuItem(actions[5]);
		jabout=new JMenuItem(actions[6]);
		jexit=new JMenuItem(actions[7]);
		
		jlook=new JMenuItem("狀態欄(S)");
		jlook.setEnabled(false);
		
		jnew.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_N,InputEvent.CTRL_MASK));
		jopen.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_O,InputEvent.CTRL_MASK));
		jsave.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_S,InputEvent.CTRL_MASK));
		jcut.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_T,InputEvent.CTRL_MASK));
		jcopy.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_C,InputEvent.CTRL_MASK));
		jpaste.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_P,InputEvent.CTRL_MASK));
		jabout.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_H,InputEvent.CTRL_MASK));
		jexit.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_X,InputEvent.CTRL_MASK));
		

		setJMenuBar(createJMenuBar(actions));  //設置菜單欄
		Container container = getContentPane(); //得到容器
		container.add(createJToolBar(actions), BorderLayout.NORTH); //增加工具欄
		container.add(textPane, BorderLayout.CENTER); //增加文本窗格
		container.add(statusBar, BorderLayout.SOUTH); //增加狀態欄

		setSize(600, 400); //設置窗口尺寸
		setVisible(true);  //設置窗口可視
		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);  //關閉窗口時退出程序
	}

	private JMenuBar createJMenuBar(Action[] actions) {  //創建菜單欄
		JMenuBar menubar = new JMenuBar(); //實例化菜單欄
		JMenu menuFile = new JMenu("文件(F)"); //實例化菜單
		JMenu menuEdit = new JMenu("編輯(E)");
		JMenu menuAbout = new JMenu("幫助(H)");
		JMenu menuformat =new JMenu("格式(O)");
		JMenu menulook =new JMenu("查看(V)");
		menuFile.setMnemonic('f');
		menuFile.setMnemonic('F');
		menuEdit.setMnemonic('e');
		menuEdit.setMnemonic('E');
		menuAbout.setMnemonic('H');
		menuAbout.setMnemonic('h');
		menuformat.setMnemonic('O');
		menuformat.setMnemonic('o');
		menulook.setMnemonic('V');
		menulook.setMnemonic('v');
		menulook.add(jlook);
		 //menuFile.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_O,InputEvent.CTRL_MASK));////////設置快捷鍵
		menuFile.add(jnew); //增加新菜單項
		menuFile.add(jopen);
		menuFile.add(jsave);
		
		JMenuItem jm=new JMenuItem("另存為(A)");
		jm.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_A,InputEvent.CTRL_MASK));
		menuFile.add(jm);
		menuFile.addSeparator();
		//JMenuItem jm1=new JMenuItem("打印");
		//menuFile.addSeparator();
		//jm1.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_P,InputEvent.CTRL_MASK));
		//menuFile.add(jm1);
		JMenuItem jm2=new JMenuItem("插入日期");
		jm2.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_D,InputEvent.CTRL_MASK));
		JMenuItem jm3=new JMenuItem("全選");
		jm3.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_A,InputEvent.CTRL_MASK));
		JMenuItem jm4=new JMenuItem("自動換行");
		jm4.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_W,InputEvent.CTRL_MASK));
		JMenuItem jm5=new JMenuItem("字體設置");
		jm5.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_F,InputEvent.CTRL_MASK));
		
		menuEdit.add(jm2);
		menuEdit.add(jm3);
		menuformat.add(jm4);
		menuformat.add(jm5);
		menuFile.add(jexit);
		menuEdit.addSeparator();
		menuEdit.add(jcut);
		menuEdit.add(jcopy);
		menuEdit.add(jpaste);
		
		menuAbout.add(jabout);
		jm.addActionListener(new ActionListener()
		{
			public void actionPerformed(ActionEvent e)
			{
				int i = filechooser.showSaveDialog(EditorDemo.this); //顯示保存文件對話框
				if (i == JFileChooser.APPROVE_OPTION) {  //點擊對話框中保存按鈕
					File f = filechooser.getSelectedFile(); //得到選擇的文件
					try {
						FileOutputStream out = new FileOutputStream(f);  //得到文件輸出流
						out.write(textPane.getText().getBytes()); //寫出文件
					} catch (Exception ex) {
						ex.printStackTrace(); //輸出出錯信息
					}
				}
			}
		});
		/*/jm1.addActionListener(new ActionListener()
		{
			public void actionPerformed(ActionEvent e)
			  {

			  }

		});*/
		jm2.addActionListener(new ActionListener()
		{
			public void actionPerformed(ActionEvent e)
			  {
				Date d=new Date();
			   textPane.append(d.toString());
			  }
		});
		jm3.addActionListener(new ActionListener()
		{
			public void actionPerformed(ActionEvent e)
			{
				textPane.selectAll();
			}
		});
		jm4.addActionListener(new ActionListener()
		{
			public void actionPerformed(ActionEvent e)
			{
				if (textPane.getLineWrap()) {
		            textPane.setLineWrap(false);
		        } else {
		            textPane.setLineWrap(true);
		        }
			}
		});
		jm5.addActionListener(new ActionListener()
		{
			public void actionPerformed(ActionEvent e)
			{
				JDialog jd=new JDialog();
				Container con=jd.getContentPane();
				con.setLayout(new FlowLayout());
				jc1=new JComboBox(s1);
				jc2=new JComboBox(s2);
				jc3=new JComboBox(s3);
				jc4=new JComboBox(s4);
				jc5=new JComboBox(s5);
				jc1.addItemListener(new ItemListener()
				{
					public void itemStateChanged(ItemEvent e)
					{
						if(e.getSource()==jc1){
							int n=jc1.getSelectedIndex();
							zihao=Integer.parseInt(s1[n]);
						}
						textPane.setFont(new Font(ziti,style,zihao));
					}
				});
				jc2.addItemListener(new ItemListener()
				{
					public void itemStateChanged(ItemEvent e)
					{
						if(e.getSource()==jc2){
							int m=jc2.getSelectedIndex();
							switch(m)
							{
							case 0:
								style=Font.PLAIN;break;
							case 1:
								style=Font.BOLD;break;
							case 2:
								style=Font.ITALIC;break;
							case 3:
								style=Font.BOLD+Font.ITALIC;break;
							}
						}
						textPane.setFont(new Font(ziti,style,zihao));
					}
				});
				jc3.addItemListener(new ItemListener()
				{
					public void itemStateChanged(ItemEvent e)
					{
						if(e.getSource()==jc3){
							int x=jc3.getSelectedIndex();							
							ziti=s3[x];
						}
						textPane.setFont(new Font(ziti,style,zihao));
					}
				});
				jc4.addItemListener(new ItemListener()
				{
					public void itemStateChanged(ItemEvent e)
					{
						int y=jc4.getSelectedIndex();
						switch(y)
						{
						case 0:
							textPane.setForeground(Color.black);break;
						case 1:
							textPane.setForeground(Color.green);break;
						case 2:
							textPane.setForeground(Color.cyan);break;
						case 3:
							textPane.setForeground(Color.red);break;
						case 4:
							textPane.setForeground(Color.lightGray);break;
						case 5:
							textPane.setForeground(Color.orange);break;
						case 6:
							textPane.setForeground(Color.pink);break;
						case 7:
							textPane.setForeground(Color.yellow);break;
						
						
					}
				}});
				jc5.addItemListener(new ItemListener()
				{
					public void itemStateChanged(ItemEvent e)
					{
						int z=jc5.getSelectedIndex();
						switch(z)
						{
						case 0:
							textPane.setBackground(Color.black);break;
						case 1:
							textPane.setBackground(Color.green);break;
						case 2:
							textPane.setBackground(Color.cyan);break;
						case 3:
							textPane.setBackground(Color.red);break;
						case 4:
							textPane.setBackground(Color.lightGray);break;
						case 5:
							textPane.setBackground(Color.orange);break;
						case 6:
							textPane.setBackground(Color.pink);break;
						case 7:
							textPane.setBackground(Color.yellow);break;
						}
						
					
					}});
				
				con.add(jc1);
				con.add(jc2);
				con.add(jc3);
				con.add(jc4);
				con.add(jc5);
				jd.setSize(300,100);
				jd.setVisible(true);
			}
		});
		menubar.add(menuFile); //增加菜單
		menubar.add(menuEdit);
		menubar.add(menuformat);
		menubar.add(menulook);
		menubar.add(menuAbout);

		return menubar; //返回菜單欄
	}



	private JToolBar createJToolBar(Action[] actions) { //創建工具條
		JToolBar toolBar = new JToolBar(); //實例化工具條
		for (int i = 0; i < actions.length; i++) {
			JButton bt = new JButton(actions[i]); //實例化新的按鈕
			bt.setRequestFocusEnabled(false); //設置不需要焦點
			toolBar.add(bt); //增加按鈕到工具欄
		}
		return toolBar;  //返回工具欄
	}

	class NewAction extends AbstractAction { //新建文件命令
		public NewAction() {
			super("新建");
		}
		public void actionPerformed(ActionEvent e) {
			textPane.setDocument(new DefaultStyledDocument()); //清空文檔
			textPane.setFont(new Font(ziti,style,zihao));
			textPane.setBackground(Color.white);
			textPane.setForeground(Color.black);
		}
	}

	class OpenAction extends AbstractAction { //打開文件命令
		public OpenAction() {
			super("打開");
		}
		public void actionPerformed(ActionEvent e) {
			int i = filechooser.showOpenDialog(EditorDemo.this); //顯示打開文件對話框
			if (i == JFileChooser.APPROVE_OPTION) { //點擊對話框中打開選項
				File file = filechooser.getSelectedFile(); //得到選擇的文件
				try{
                    FileInputStream fin =new FileInputStream(file);
                    InputStreamReader in =new InputStreamReader(fin);
                    BufferedReader reader =new BufferedReader(in);
                    String s=reader.readLine();
                    textPane.setText(s);
                    while((s=reader.readLine())!=null){
                        textPane.append("\n"+s);
                    }
                    
                    in.close();
				}catch(FileNotFoundException fe){}
				catch (Exception ex) {
					ex.printStackTrace();  //輸出出錯信息
				}
			}
		}
	}

	class SaveAction extends AbstractAction {  //保存命令
		public SaveAction() {
			super("保存");
		}
		public void actionPerformed(ActionEvent e) {
			int i = filechooser.showSaveDialog(EditorDemo.this); //顯示保存文件對話框
			if (i == JFileChooser.APPROVE_OPTION) {  //點擊對話框中保存按鈕
				File f = filechooser.getSelectedFile(); //得到選擇的文件
				try {
					FileOutputStream out = new FileOutputStream(f);  //得到文件輸出流
					out.write(textPane.getText().getBytes()); //寫出文件
				} catch (Exception ex) {
					ex.printStackTrace(); //輸出出錯信息
				}
			}
		}
	}

	class ExitAction extends AbstractAction { //退出命令
		public ExitAction() {
			super("退出");
		}
		public void actionPerformed(ActionEvent e) {
			System.exit(0);  //退出程序
		}
	}

	class CutAction extends AbstractAction {  //剪切命令
		public CutAction() {
			super("剪切");
		}
		public void actionPerformed(ActionEvent e) {
			textPane.cut();  //調用文本窗格的剪切命令
		}
	}

	class CopyAction extends AbstractAction {  //拷貝命令
		public CopyAction() {
			super("拷貝");
		}
		public void actionPerformed(ActionEvent e) {
			textPane.copy();  //調用文本窗格的拷貝命令
		}
	}

	class PasteAction extends AbstractAction {  //粘貼命令
		public PasteAction() {
			super("粘貼");
		}
		public void actionPerformed(ActionEvent e) {
			textPane.paste();  //調用文本窗格的粘貼命令
		}
	}

	class AboutAction extends AbstractAction { //關于選項命令
		public AboutAction() {
			super("關于");
		}
		public void actionPerformed(ActionEvent e) {
			JOptionPane.showMessageDialog(EditorDemo.this, "簡單的文本編輯器演示"); //顯示軟件信息
		}
	}

	public static void main(String[] args) {
		new EditorDemo();
	}

}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
中文字幕va一区二区三区| 乱中年女人伦av一区二区| 精品国产一区二区亚洲人成毛片| 色天天综合色天天久久| 99re亚洲国产精品| 97久久精品人人做人人爽50路| 丰满亚洲少妇av| 成人av在线播放网址| 成人免费视频视频在线观看免费 | 国产精品久久久一区麻豆最新章节| 日韩免费看的电影| 日韩欧美专区在线| 久久综合色婷婷| 国产目拍亚洲精品99久久精品| 国产婷婷色一区二区三区在线| 国产片一区二区三区| 亚洲色图在线视频| 亚洲成人动漫精品| 精品一区二区三区久久| 豆国产96在线|亚洲| 一本一道综合狠狠老| 91麻豆精品国产91久久久久久久久| 欧美一区二区三区在线| 久久久美女艺术照精彩视频福利播放| 国产日韩欧美电影| 亚洲男人的天堂网| 精品一区二区三区香蕉蜜桃| 国产成人精品1024| 日本福利一区二区| 日韩欧美中文字幕一区| 国产免费观看久久| 丝袜诱惑制服诱惑色一区在线观看| 久久福利资源站| 色综合一区二区| 日韩精品一区二区三区在线| 中文字幕在线不卡| 免费观看在线色综合| 91色乱码一区二区三区| 日韩限制级电影在线观看| 国产精品成人在线观看| 美美哒免费高清在线观看视频一区二区 | 日韩精品一级二级 | 亚洲精选在线视频| 麻豆高清免费国产一区| eeuss鲁片一区二区三区在线观看| 欧美日韩的一区二区| 亚洲国产成人私人影院tom| 性感美女久久精品| 不卡的av电影| 日韩欧美一区中文| 亚洲免费观看高清完整版在线观看 | 色综合色综合色综合色综合色综合| 91精品婷婷国产综合久久竹菊| 欧美激情一区二区三区全黄| 奇米综合一区二区三区精品视频| 色综合久久天天综合网| 国产亚洲1区2区3区| 日韩av中文在线观看| 一本大道av一区二区在线播放| 精品国产一二三区| 奇米影视一区二区三区| 欧美视频一区二| 亚洲免费观看高清完整| 福利电影一区二区| 国产无一区二区| 国产精品综合一区二区| 日韩欧美国产精品一区| 日韩电影在线观看电影| 欧美日韩视频专区在线播放| 亚洲免费资源在线播放| 色综合网站在线| 亚洲精品一卡二卡| 色综合久久久久网| 亚洲精品视频一区| 日本高清不卡一区| 一区二区三区欧美在线观看| 一本色道综合亚洲| 一区二区三区四区在线| 91国产免费看| 亚洲超碰精品一区二区| 欧美色偷偷大香| 午夜精品成人在线| 欧美一区二区在线播放| 青青草国产成人99久久| 精品日韩成人av| 久久97超碰国产精品超碰| 欧美大片一区二区三区| 久久99精品国产| 久久美女艺术照精彩视频福利播放| 奇米影视在线99精品| 精品欧美一区二区久久| 国产成人免费9x9x人网站视频| 欧美国产日韩亚洲一区| 成人激情小说乱人伦| 亚洲猫色日本管| 91精品欧美久久久久久动漫| 另类调教123区 | 一区二区在线免费| 欧美日韩亚洲国产综合| 精品无人区卡一卡二卡三乱码免费卡 | 日韩av中文字幕一区二区| 日韩精品一区二| 波多野结衣亚洲| 婷婷国产v国产偷v亚洲高清| 精品美女一区二区| 99精品热视频| 亚洲18女电影在线观看| 国产视频在线观看一区二区三区| 成人精品小蝌蚪| 婷婷成人激情在线网| 国产喷白浆一区二区三区| 欧美亚洲动漫精品| 国产精品1024久久| 亚洲一区二区精品视频| 久久久久免费观看| 色婷婷综合久久久久中文| 蜜桃av一区二区在线观看| 国产精品久久久久久久久免费相片| 欧美三级一区二区| 国产一区二区三区蝌蚪| 亚洲成人www| 国产精品你懂的| 日韩一区二区三免费高清| 成人精品免费网站| 狠狠色狠狠色综合| 亚洲国产aⅴ成人精品无吗| 欧美国产一区在线| 日韩精品一区二区三区视频播放 | 欧美日韩不卡在线| 成人av综合在线| 国产麻豆精品久久一二三| 亚洲国产视频在线| 中文字幕视频一区| 欧美激情一区在线观看| 日韩欧美一区二区三区在线| 欧美日韩国产美女| 91久久精品一区二区三| 99热精品一区二区| 成人一区二区三区在线观看| 韩国欧美国产1区| 免费成人在线影院| 日韩—二三区免费观看av| 亚洲成人一区在线| 亚洲国产日韩精品| 一区av在线播放| 亚洲精品免费电影| 亚洲精品水蜜桃| 1区2区3区精品视频| 国产精品无圣光一区二区| 久久久国产精品不卡| 精品久久久久99| 久久伊人蜜桃av一区二区| 日韩欧美一级在线播放| 日韩一本二本av| 欧美xxxx老人做受| 精品日韩欧美在线| 久久久精品tv| 中文字幕一区二区三区精华液| 国产亚洲一区二区三区| 国产日韩欧美a| 国产精品高潮呻吟久久| 一区在线观看视频| 亚洲日本va午夜在线电影| 亚洲夂夂婷婷色拍ww47| 亚洲成人免费在线| 美女mm1313爽爽久久久蜜臀| 国产麻豆精品一区二区| 成人午夜电影网站| 色婷婷国产精品久久包臀| 欧美日韩高清一区二区| 337p粉嫩大胆噜噜噜噜噜91av| 2021国产精品久久精品| 国产精品国产自产拍高清av王其| 亚洲欧美在线aaa| 午夜久久电影网| 国产麻豆午夜三级精品| 99re8在线精品视频免费播放| 欧美中文字幕一区二区三区| 91精品福利在线一区二区三区| 26uuu国产电影一区二区| 国产精品灌醉下药二区| 午夜视频在线观看一区| 韩国成人在线视频| 色欧美88888久久久久久影院| 在线播放日韩导航| 国产精品久久毛片av大全日韩| 亚洲一区二区三区视频在线播放| 久久 天天综合| 色就色 综合激情| 精品国产乱码久久| 夜夜亚洲天天久久| 极品尤物av久久免费看| 一本一道波多野结衣一区二区 | 久久这里只精品最新地址| 亚洲欧美日韩久久精品| 美女视频第一区二区三区免费观看网站| 国产a视频精品免费观看| 欧美猛男男办公室激情| 国产精品色一区二区三区| 秋霞av亚洲一区二区三|