⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 记事本.java

📁 一个用java做的记事本小程序
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
		查找下一个.addActionListener(this);
		替换.addActionListener(this);
		转到.addActionListener(this);
		全选.addActionListener(this);
		时间.addActionListener(this);
		自动换行.addActionListener(this);
		字体.addActionListener(this);
		颜色.addActionListener(this);
		状态栏.addActionListener(this);
		查看帮助.addActionListener(this);
		关于记事本.addActionListener(this);
		MenuShortcut shortcut=new MenuShortcut(KeyEvent.VK_N);
		新建.setShortcut(shortcut);
		MenuShortcut shortcut1=new MenuShortcut(KeyEvent.VK_O);
		打开.setShortcut(shortcut1);
		MenuShortcut shortcut2=new MenuShortcut(KeyEvent.VK_S);
		保存.setShortcut(shortcut2);
		MenuShortcut shortcut3=new MenuShortcut(KeyEvent.VK_P);
		打印.setShortcut(shortcut3);
		MenuShortcut shortcut4=new MenuShortcut(KeyEvent.VK_Z);
		撤销.setShortcut(shortcut4);
		MenuShortcut shortcut5=new MenuShortcut(KeyEvent.VK_X);
		剪切.setShortcut(shortcut5);
		MenuShortcut shortcut6=new MenuShortcut(KeyEvent.VK_C);
		复制.setShortcut(shortcut6);
		MenuShortcut shortcut7=new MenuShortcut(KeyEvent.VK_V);
		粘贴.setShortcut(shortcut7);
		MenuShortcut shortcut8=new MenuShortcut(KeyEvent.VK_F);
		查找.setShortcut(shortcut8);
		MenuShortcut shortcut9=new MenuShortcut(KeyEvent.VK_H);
		替换.setShortcut(shortcut9);
		MenuShortcut shortcut10=new MenuShortcut(KeyEvent.VK_G);
		转到.setShortcut(shortcut10);
		MenuShortcut shortcut11=new MenuShortcut(KeyEvent.VK_A);
		全选.setShortcut(shortcut11);
		MenuShortcut shortcut12=new MenuShortcut(KeyEvent.VK_F5);
		时间.setShortcut(shortcut12);
		MenuShortcut shortcut13=new MenuShortcut(KeyEvent.VK_F3);
		查找下一个.setShortcut(shortcut13);
		MenuShortcut shortcut14=new MenuShortcut(KeyEvent.VK_DELETE);
		删除.setShortcut(shortcut14);
		dialog=new myDialog(this,"记事本",true);
		dialog.setSize(200,100);
		file_load=new FileDialog(this,"打开",FileDialog.LOAD);
		file_load.setVisible(false);
		file_save=new FileDialog(this,"另存为",FileDialog.SAVE);
		file_save.setVisible(false);
		dim=this.getToolkit().getScreenSize();
		this.setBounds(300,400,dim.width/3,dim.height/3);
		
		this.setVisible(true);
		text=new JTextArea();
		text.setLineWrap(true);
		scroll=new JScrollPane(text);
		this.add(scroll,BorderLayout.CENTER);
		this.addWindowListener(new WindowAdapter()
		{
			public void windowClosing(WindowEvent e)
			{
				System.exit(0);
			}
		});
		this.validate();
		this.pack();
	}

	public void actionPerformed(ActionEvent e)
	{
		if(e.getSource()==新建)
		{	
			if(text.getText()==null)
				{
				text.setText(null);
				}
			else
			{
                dialog.setVisible(true);
				if(dialog.getMessage()==myDialog.YES)
				{
					file_save.setVisible(true);
					if(file_save.getFile()!=null)
					{
						try
						{
							File file=new File(file_save.getDirectory(),file_save.getFile());
							tofile=new FileWriter(file);
							out=new BufferedWriter(tofile);
							out.write(text.getText(),0,(text.getText().length()));
							text.setText(null);
							out.flush();
							out.close();
							tofile.close();
						}
						catch(IOException exp){}
					}
					
				}
				else if(dialog.getMessage()==myDialog.NO)
				{
					text.setText(null);
				}
				else if(dialog.getMessage()==myDialog.OR)
				{
					text.setText(text.getText());
				}
			}
			
		}
		else if(e.getSource()==打开)
		{
			file_load.setVisible(true);
			text.setText(null);
			String s;
			if(file_load.getFile()!=null)
			{
				try
				{
					File file=new File(file_load.getDirectory(),file_load.getFile());
					file_reader=new FileReader(file);
					in=new BufferedReader(file_reader);
					while((s=in.readLine())!=null)
					{
						text.append(s+'\n');
					}
					in.close();
					file_reader.close();
				}
				catch(IOException exp){}
			}
		}
		else if(e.getSource()==保存)
		{
			file_save.setVisible(true);
			if(file_save.getFile()!=null)
			{
				try
				{
					File file=new File(file_save.getDirectory(),file_save.getFile());
					tofile=new FileWriter(file);
					out=new BufferedWriter(tofile);
					out.write(text.getText(),0,(text.getText().length()));
					out.flush();
					out.close();
					tofile.close();
				}
				catch(IOException exp){}
			}
		}
		else if(e.getSource()==另存为)
		{
			file_save.setVisible(true);
			if(file_save.getFile()!=null)
			{
				try
				{
					File file=new File(file_save.getDirectory(),file_save.getFile());
					tofile=new FileWriter(file);
					out=new BufferedWriter(tofile);
					out.write(text.getText(),0,(text.getText().length()));
					out.flush();
					out.close();
					tofile.close();
				}
				catch(IOException exp){}
			}
		}
		else if(e.getSource()==退出)
		{
			System.exit(0);
		}
		else if(e.getSource()==剪切)
		{
		String temp=text.getSelectedText();
		StringSelection text1=new StringSelection(temp);
		clipboard.setContents(text1,null);
		int start=text.getSelectionStart();
		int end=text.getSelectionEnd();
		text.replaceRange("",start,end);
		}
		else if(e.getSource()==复制)
		{
			String temp=text.getSelectedText();
			StringSelection text1=new StringSelection(temp);
			clipboard.setContents(text1,null);
		}
		else if(e.getSource()==粘贴)
		{
			Transferable contents=clipboard.getContents(this);
			DataFlavor flavor=DataFlavor.stringFlavor;
			if(contents.isDataFlavorSupported(flavor))
			{
				try
				{
					String str=(String)contents.getTransferData(flavor);
					int a=text.getCaretPosition();
					text.insert(str,a);
				}
				catch(Exception ee){}
			}
		}
		else if(e.getSource()==删除)
		{
			String temp=text.getSelectedText();
			int start=text.getSelectionStart();
			int end=text.getSelectionEnd();
			text.replaceRange("",start,end);
		}
		else if(e.getSource()==时间)
		{
			Date date=new Date();
			String s=date.toString();
			text.setText(s);
		}
		else if(e.getSource()==全选)
		{
			text.selectAll();
		}
		else if(e.getSource()==字体)
		{
			字体1 ziti=new 字体1(this,"字体(F)",true);
			ziti.setVisible(true);
			if(ziti.i1==0)
			{Font f=new Font(ziti.name,Font.BOLD,ziti.大小1);
			text.setFont(f);}
			else if(ziti.i1==1)
			{
				Font f=new Font(ziti.name,Font.PLAIN,ziti.大小1);
				text.setFont(f);
			}
			else if(ziti.i1==2)
			{
				Font f=new Font(ziti.name,Font.ITALIC,ziti.大小1);
				text.setFont(f);
			}
			else if(ziti.i1==3)
			{
				Font f=new Font(ziti.name,Font.HANGING_BASELINE,ziti.大小1);
				text.setFont(f);
			}
			else if(ziti.i1==4)
			{
				Font f=new Font(ziti.name,Font.ROMAN_BASELINE,ziti.大小1);
				text.setFont(f);
			}
			else if(ziti.i1==5)
			{
				Font f=new Font(ziti.name,Font.CENTER_BASELINE,ziti.大小1);
				text.setFont(f);
			}
			else if(ziti.i1==6)
			{
				Font f=new Font(ziti.name,Font.TRUETYPE_FONT,ziti.大小1);
				text.setFont(f);
			}
		}
		else if(e.getSource()==颜色)
		{
			Color newColor=JColorChooser.showDialog(this, "调色板", text.getBackground());
			text.setBackground(newColor);
		}
		else if(e.getSource()==打印)
		{
		PrintJob p=this.getToolkit().getPrintJob(this,"ok", null);
		Graphics g=p.getGraphics();
		text.printAll(g);
		g.dispose();
		p.end();
		}
		else if(e.getSource()==替换)
		{
			替换Dialog d1=new 替换Dialog(this,"替换",true);
			d1.setVisible(true);
			if(d1.returnMessage()==替换Dialog.AND)
			{
				String s=d1.text1.getText().toString();
				String s1=d1.text2.getText().toString();
				String s2=text.getText().toString();
				int a=d1.text1.getText().length();
				for(int i=0;i<text.getText().length();i++)
				{
					if(s2.regionMatches(i, s, 0, a))
					{
						text.replaceRange(s1,i,i+a);
					}
				}
			}
			else if(d1.returnMessage()==替换Dialog.OR)
			{
			}
			else if(d1.returnMessage()==替换Dialog.YES)
			{
				String s=d1.text1.getText().toString();	
				String s2=text.getText().toString();
				int a=d1.text1.getText().length();
				int a1=text.getSelectionStart();
				for(int i=a1+a;i<text.getText().length();i++)
				{
					if(s2.regionMatches(i, s, 0, a))
					{
						text.setSelectionStart(i);
						text.setSelectionEnd(i+a);
						break;
					}
				}
			}
			else if(d1.returnMessage()==替换Dialog.NO)
			{
				String s=d1.text1.getText().toString();
				String s1=d1.text2.getText().toString();
				String s2=text.getText().toString();
				int a=d1.text1.getText().length();
				int a1=text.getSelectionStart();
				text.replaceRange(s1,a1,a1+a);
				for(int i=a1+a;i<text.getText().length();i++)
				{
					if(s2.regionMatches(i, s, 0, a))
					{
						text.setSelectionStart(i);
						text.setSelectionEnd(i+a);
						break;
					}
				}
			}
		}
		else if(e.getSource()==查找)
		{
			查找Dialog d2=new 查找Dialog(this,"查找",true);
			d2.setVisible(true);
			String s=d2.text.getText().toString();
			String s2=text.getText().toString();
			int a1=text.getSelectionStart();
			int a=d2.text.getText().length();
			if(d2.returnm()==查找Dialog.YES&&d2.box1.getState())
			{
				for(int i=a1-a;i>=0;i--)
				{
					if(s2.regionMatches(i, s, 0, a))
					{
						text.setSelectionStart(i);
						text.setSelectionEnd(i+a);
						break;
					}
				}
			}
			else if(d2.returnm()==查找Dialog.YES&&d2.box2.getState())
			{
				for(int i=a1+a;i<text.getText().length();i++)
				{
					if(s2.regionMatches(i, s, 0, a))
					{
						text.setSelectionStart(i);
						text.setSelectionEnd(i+a);
						break;
					}
				}
			}
			else if(d2.returnm()==查找Dialog.NO){}
		}
		else if(e.getSource()==查找下一个)
		{
			String s2=text.getText().toString();
			String s=text.getSelectedText();
			int a=text.getSelectedText().length();
			int a1=text.getSelectionStart();
			for(int i=a1+a;i<text.getText().length();i++)
			{
				if(s2.regionMatches(i, s, 0, a))
				{
					text.setSelectionStart(i);
					text.setSelectionEnd(i+a);
					break;
				}
			}
		}
	}
}
public class 记事本 
{public static void main(String args[])
{
  new myFrame();
}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -