?? jishiben.java
字號:
//新建功能中的清零方法
public void clear(){
jta.setText("");
st1="";
st2="";
st3="";
st4="";
this.setTitle("未定標題 -記事本");
file = new File("未定標題");
undo.discardAllEdits();
}
//文件框篩選功能
class TextFileFilter extends javax.swing.filechooser.FileFilter {
public boolean accept(File f) {
return f.getName().endsWith(".txt") || f.isDirectory();
}
public String getDescription() {
return "Text Files (*.txt)";
}
}
//主函數
public static void main(String[] args){
JFrame.setDefaultLookAndFeelDecorated(false);
JiShiBen js=new JiShiBen();
}
//新建功能
class Newf implements ActionListener{
public void actionPerformed(ActionEvent a){
int n;
String str="";
str=jta.getText();
if ("".equals(st1)){//當前文本不是打開的
if ("".equals(str) || st2.equals(str)){//當前文本沒有被修改 或 修改過已經保存
clear();//調用新建功能中的清零方法
}
else{//當前文本修改過但沒有保存
n = JOptionPane.showConfirmDialog(null,file+" 文件的文字已經改變.想保存文件嗎?","記事本",JOptionPane.YES_NO_CANCEL_OPTION);
if (n==0){
newsaveed();//調用新建功能中保存文件并清零方法
}
if (n==1){
clear();//調用新建功能中的清零方法
}
if (n==2){
}
}
}
else{//當前文本是打開的
if(st3.equals(str) || st2.equals(str)){//當前文本沒有被修改 或 修改過已經保存
clear();//調用新建功能中的清零方法
}
else{//當前文本修改過但沒有保存
n = JOptionPane.showConfirmDialog(null,file+" 文件的文字已經改變.想保存文件嗎?","記事本",JOptionPane.YES_NO_CANCEL_OPTION);
if (n==0){
newsaveed();//調用新建功能中保存文件并清零方法
}
if (n==1){
clear();//調用新建功能中的清零方法
}
if (n==2){
}
}
}
}
}
//打開功能
class Open implements ActionListener{
public void actionPerformed(ActionEvent a){
int n;
String str="";
str=jta.getText();
if ("".equals(st1)){//當前文本不是打開的
if("".equals(str) || str.equals(st2)){//當前文本沒有被修改 或 修改過已經保存
opened();//調用普通打開文件方法
}
else{//當前文本修改過但沒有保存
n = JOptionPane.showConfirmDialog(null,file+" 文件的文字已經改變.想保存文件嗎?","記事本",JOptionPane.YES_NO_CANCEL_OPTION);
if (n==0){
save_open();//調用打開功能中的先保存再打開方法
}
if (n==1){
opened();//調用普通打開文件方法
}
if (n==2){
}
}
}
else{//當前文本是打開的
if(str.equals(st3) || str.equals(st2)){//當前文本沒有被修改 或 修改過已經保存
opened();//打開方法
}
else{//當前文本修改過但沒有保存
n = JOptionPane.showConfirmDialog(null,file+" 文件的文字已經改變.想保存文件嗎?","記事本",JOptionPane.YES_NO_CANCEL_OPTION);
if (n==0){
save_open();//調用打開功能中的先保存再打開方法
}
if (n==1){
opened();//調用普通打開文件方法
}
if (n==2){
}
}
}
}
}
//保存功能
class Save implements ActionListener {
public void actionPerformed(ActionEvent e) {
int n;
String str="";
str=jta.getText();
if ("".equals(st1)){//當前文本不是打開的
if ("".equals(st4)){
saveed();//調用普通彈出式保存文件方法
}
else{
usaveed();//調用無彈出文件框的保存文件方法
}
}
else{//當前文本是打開的
usaveed();//調用無彈出文件框的保存文件方法
}
}
}
//另存為功能
class Savea implements ActionListener {
public void actionPerformed(ActionEvent e) {
saveed();
}
}
//界面設置功能
class Pages implements ActionListener {
public void actionPerformed(ActionEvent e) {
JOptionPane.showMessageDialog(null,"打印之前必須已經安裝打印機.\n要安裝打印機,請單擊\"開始\",指向\"設置\",選定\"打印機\",然后再雙擊\"添加打印機\".","打印錯誤",JOptionPane.WARNING_MESSAGE);
}
}
//打印功能
class Print implements ActionListener {
public void actionPerformed(ActionEvent e) {
JOptionPane.showMessageDialog(null,"打印之前必須已經安裝打印機.\n要安裝打印機,請單擊\"添加打印機\"圖標;或者單擊位于該對話\"常規\"選項卡上的\"查找打印機...\"按鈕.","常規",JOptionPane.WARNING_MESSAGE);
}
}
//退出功能
class Quit implements ActionListener {
public void actionPerformed(ActionEvent e) {
System.exit(0);
}
}
//撤銷功能
class Chexiao implements ActionListener {
public void actionPerformed(ActionEvent e) {
try {
if (undo.canUndo()) {
undo.undo();
}
}
catch (CannotUndoException che) {
}
}
}
//重做功能
class Chongzuo implements ActionListener {
public void actionPerformed(ActionEvent e) {
try {
if (undo.canRedo()) {
undo.redo();
}
}
catch (CannotRedoException chong) {
}
}
}
//剪切功能
class Cut implements ActionListener {
public void actionPerformed(ActionEvent e) {
jta.cut();
}
}
//復制功能
class Copy implements ActionListener {
public void actionPerformed(ActionEvent e) {
jta.copy();
}
}
//粘貼功能
class Paste implements ActionListener {
public void actionPerformed(ActionEvent e) {
jta.paste();
}
}
//刪除功能
class Dele implements ActionListener {
public void actionPerformed(ActionEvent e) {
jta.replaceRange("",jta.getSelectionStart(),jta.getSelectionEnd());
}
}
//查找功能
class Lookup implements ActionListener {
public void actionPerformed(ActionEvent e) {
cz.setVisible(true);
}
}
//替換功能
class Swap implements ActionListener {
public void actionPerformed(ActionEvent e) {
ti.setVisible(true);
}
}
//轉到功能
class Got implements ActionListener {
public void actionPerformed(ActionEvent e) {
zd.setVisible(true);
}
}
//全選功能
class Checka implements ActionListener {
public void actionPerformed(ActionEvent e) {
jta.selectAll();
}
}
//時間日期功能
class Time implements ActionListener {
public void actionPerformed(ActionEvent e) {
Calendar d=Calendar.getInstance();
jta.replaceSelection(d.getTime().getHours()+":"+d.getTime().getMinutes()+" "+d.get(Calendar.YEAR)+"-"+(d.get(Calendar.MONTH)+1)+"-"+d.get(Calendar.DATE));
}
}
//自動換行功能
class Linew implements ActionListener {
public void actionPerformed(ActionEvent e) {
if(b==true){
jta.setLineWrap(b);
b=false;
}
else{
jta.setLineWrap(b);
b=true;
}
}
}
//字體功能
class Fontf implements ActionListener {
public void actionPerformed(ActionEvent e) {
fc.setVisible(true);
}
}
//替換面板類
class Tihuan extends JFrame{
private JPanel p = new JPanel();
private JLabel l1 = new JLabel("查找內容(N):");
private JLabel l2 = new JLabel("替換為(P):");
private JTextField t1 = new JTextField();
private JTextField t2 = new JTextField();
private JButton b1 = new JButton("查找下一個(F)");
private JButton b2 = new JButton("替 換(R)");
private JButton b3 = new JButton("全部替換(A)");
private JButton b4 = new JButton("取 消");
private JCheckBox c1 = new JCheckBox("區分大小寫(C)");
Tihuan(){
this.setTitle("替換");
this.setIconImage(Toolkit.getDefaultToolkit().getImage("jishiben.gif"));
p.setLayout(null);
Container ct = this.getContentPane();
ct.add(p);
p.add(l1);
p.add(l2);
p.add(t1);
p.add(t2);
p.add(b1);
p.add(b2);
p.add(b3);
p.add(b4);
p.add(c1);
l1.setBounds(10,10,100,25);
l2.setBounds(10,40,100,25);
t1.setBounds(85,10,180,25);
t2.setBounds(85,40,180,25);
b1.setBounds(270,9,120,25);
b2.setBounds(270,39,120,25);
b3.setBounds(270,69,120,25);
b4.setBounds(270,99,120,25);
c1.setBounds(10,99,120,25);
this.setLocation(300,200);
this.setSize(400,180);
this.setResizable(false);
this.setVisible(false);
}
}
//查找面板類
class Chazhao extends JFrame{
private JPanel p1 = new JPanel();
private JPanel p2 = new JPanel();
private JPanel p3 = new JPanel();
private JPanel p4 = new JPanel();
private JLabel l1 = new JLabel("查找內容(N):");
private JLabel l2 = new JLabel("");
private JTextField t1 = new JTextField(17);
private JButton b1 = new JButton("查找下一個(F)");
private JButton b2 = new JButton(" 取消 ");
private JCheckBox c1 = new JCheckBox("區分大小寫(C)");
private JRadioButton r1 = new JRadioButton("向上");
private JRadioButton r2 = new JRadioButton("向下",true);
private ButtonGroup bgroup = new ButtonGroup();
Chazhao(){
this.setTitle("查找");
this.setIconImage(Toolkit.getDefaultToolkit().getImage("jishiben.gif"));
bgroup.add(r1);
bgroup.add(r2);
Container ct = this.getContentPane();
ct.add(p1,BorderLayout.NORTH);
p1.add(l1);
p1.add(t1);
p1.add(b1);
p2.add(b2);
p3.add(r1);
p3.add(r2);
p4.add(l2);
p3.setBorder(BorderFactory.createTitledBorder("方向"));
ct.add(c1,BorderLayout.WEST);
ct.add(p2,BorderLayout.EAST);
ct.add(p3,BorderLayout.CENTER);
ct.add(p4,BorderLayout.SOUTH);
this.setLocation(300,200);
this.setSize(400,140);
this.setResizable(false);
this.setVisible(false);
}
}
//轉到面板類
class Zhuandao extends JFrame{
private JTextField t1 = new JTextField(10);
private JButton b1 = new JButton("確定");
private JButton b2 = new JButton("取消");
Zhuandao(){
this.setTitle("轉到下一行");
this.setIconImage(Toolkit.getDefaultToolkit().getImage("jishiben.gif"));
Container ct = this.getContentPane();
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -