📄 mainframe.java
字号:
package com.baoyabing.gui;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class MainFrame extends JFrame{
JTextField
filename = new JTextField(60),
dir = new JTextField(60);
JButton
open = new JButton("Open"),
save = new JButton("Save");
static JFrame jf = new JFrame("菜菜编译软件");
static JTextPane jtp = new JTextPane();
JMenuBar jmb = new JMenuBar();
public MainFrame(){
//
JMenu jmfile = new JMenu("File");
JMenuItem jmiopen = new JMenuItem("Open");
jmiopen.addActionListener(new OpenL());
JMenuItem jmisave = new JMenuItem("Save");
jmisave.addActionListener(new SaveL());
JMenuItem jmiexit = new JMenuItem("Exit");
jmiexit.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
jf.setVisible(false);
jf.dispose();
System.exit(0);
}
});
JMenu jmedit = new JMenu("Edit");
JMenuItem jmicut = new JMenuItem("Cut");
JMenuItem jmicopy = new JMenuItem("Copy");
JMenuItem jmipaste = new JMenuItem("Paste");
JMenu jmrun = new JMenu("Run");
JMenuItem jmirun = new JMenuItem("Run");
JMenuItem jmidebug = new JMenuItem("Debug");
jf.add(jmb,BorderLayout.NORTH);
jmb.add(jmfile);
jmfile.add(jmiopen);
jmfile.add(jmisave);
jmfile.addSeparator();
jmfile.add(jmiexit);
jmb.add(jmedit);
jmedit.add(jmicut);
jmedit.add(jmicopy);
jmedit.add(jmipaste);
jmb.add(jmrun);
jmrun.add(jmirun);
jmrun.add(jmidebug);
//
jf.add(jtp,BorderLayout.CENTER);
jtp.setSize(250,600);
jtp.setMaximumSize(new Dimension(600,600));
jtp.setBackground(Color.LIGHT_GRAY);
jtp.setForeground(Color.black);
jtp.setFont(new Font("sans", Font.PLAIN, 15));
JScrollPane jsp=new JScrollPane(jtp);
jf.add(jsp,BorderLayout.CENTER);
dir.setEnabled(false);
filename.setEditable(false);
jf.setBounds(250, 80, 800, 600);
jf.setVisible(true);
jf.addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent e){
jf.setVisible(false);
jf.dispose();
System.exit(0);
}
});
}
class OpenL implements ActionListener{
public void actionPerformed(ActionEvent e){
JFileChooser c = new JFileChooser();
int rVal = c.showOpenDialog(MainFrame.this);
if(rVal == JFileChooser.APPROVE_OPTION){
String path = c.getSelectedFile().toString();
OpenFileAction ofa = new OpenFileAction(path);
ofa.run();
}
if(rVal == JFileChooser.CANCEL_OPTION){
filename.setText("You pressed cancel");
dir.setText(" ");
}
}
}
class SaveL implements ActionListener{
public void actionPerformed(ActionEvent e){
JFileChooser c = new JFileChooser();
int rVal = c.showSaveDialog(MainFrame.this);
if(rVal == JFileChooser.APPROVE_OPTION){
String str = c.getSelectedFile().toString();
SaveFileAction sfa = new SaveFileAction(str);
sfa.run();
//filename.setText(c.getSelectedFile().toString());
//dir.setText(c.getCurrentDirectory().toString());
}
if(rVal == JFileChooser.CANCEL_OPTION){
filename.setText("you pressed cancel");
dir.setText(" ");
}
}
}
public static void main(String[] args) {
MainFrame fct = new MainFrame();
}
public static JTextPane getJTP(){
return jtp;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -