📄 javaants.java
字号:
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.tree.*;
import javax.swing.border.*;
public class javaants extends JFrame{
//申明菜单栏、菜单条、子菜单、菜单项、工具栏、复选框、按钮、构造组件、容器
private JMenu file,edit,download,view,option,tool,help;
private JMenuItem exit,add,preference,bookmark;
private static JMenuItem start,stop;
private JMenuItem helptopic,about;
private JCheckBoxMenuItem istoolbar,isstatusbar;
private JMenuBar menubar;
private JToolBar toolbar;
private JButton addBut,helpBut;
private static JButton startBut,stopBut;
private JButton preferenceBut,exitBut;
private JComponent left,right;
Listener listener;
private Container contentPane;
private JSplitPane leftsp;
JScrollPane scrollPane;//
JPanel panel;//面板
//static JProgressBar pb;
JLabel label,statusBar;//标签
JTree tree;
DefaultTreeCellRenderer render;
public javaants(String name){
super(name);
init();
}
/*初始化程序界面*/
private void init(){
//设置容器
render=new DefaultTreeCellRenderer();
render.setBackgroundNonSelectionColor(Color.white);
render.setTextNonSelectionColor(Color.black);
render.setTextSelectionColor(Color.red);
tree=new JTree(createNodes());
tree.setCellRenderer(render);
tree.setRootVisible(true);
//tree.setEditable(true);
tree.setBackground(Color.white);
label=new JLabel("进度监控:");
label.setForeground(Color.blue);
statusBar=new JLabel("状态栏");
leftsp=new JSplitPane();
leftsp.setContinuousLayout(true);
leftsp.setDividerSize(5);
leftsp.setDividerLocation(200);
left=(JComponent)leftsp.getLeftComponent();
left.setBackground(Color.white);
right=(JComponent)leftsp.getRightComponent();
right.setBackground(Color.white);
panel=new JPanel();
panel.setBackground(Color.white);
//pb=new JProgressBar();
panel.add(label);
//panel.add(pb);
right.add(panel,BorderLayout.NORTH);
contentPane=getContentPane();
//添加scrollPane
scrollPane=new JScrollPane(tree);
scrollPane.setBackground(Color.pink);
left.add(scrollPane);
listener=new Listener();
toolbar=new JToolBar();
menubar=new JMenuBar();
//实现文件菜单
file=new JMenu("文件");
exit=new JMenuItem("退出");
exit.addActionListener(listener);
exitBut=new JButton("退出");
exitBut.setToolTipText("退出");
exitBut.addActionListener(listener);
file.add(exit);
//实现编辑菜单
edit=new JMenu("编辑");
add=new JMenuItem("添加");
add.addActionListener(listener);
addBut=new JButton("添加");
addBut.setToolTipText("添加");
addBut.addActionListener(listener);
edit.add(add);
//实现下载菜单
download=new JMenu("下载");
start=new JMenuItem("开始");
start.addActionListener(listener);
start.setEnabled(false);
startBut=new JButton("开始");
startBut.addActionListener(listener);
startBut.setEnabled(false);
startBut.setToolTipText("开始");
stopBut=new JButton("停止");
stopBut.addActionListener(listener);
stopBut.setToolTipText("停止");
stopBut.setEnabled(false);
stop=new JMenuItem("停止");
stop.addActionListener(listener);
stop.setEnabled(false);
download.add(start);
download.add(stop);
//实现可视化菜单
view=new JMenu("视图");
istoolbar=new JCheckBoxMenuItem("工具栏");
isstatusbar=new JCheckBoxMenuItem("状态栏");
view.add(istoolbar);
view.add(isstatusbar);
//实现选项菜单
option=new JMenu("选项");
preference=new JMenuItem("配置");
preference.addActionListener(listener);
preferenceBut=new JButton("配置");
preferenceBut.setToolTipText("配置");
preferenceBut.addActionListener(listener);
option.add(preference);
//实现工具菜单
tool=new JMenu("工具");
bookmark=new JMenuItem("书签");
bookmark.addActionListener(listener);
tool.add(bookmark);
//实现帮助菜单
help=new JMenu("帮助");
helptopic=new JMenuItem("主题帮助");
helptopic.addActionListener(listener);
helpBut=new JButton("帮助");
helpBut.setToolTipText("帮助");
helpBut.addActionListener(listener);
about=new JMenuItem("关于制作室...");
about.addActionListener(listener);
help.add(helptopic);
help.add(about);
//添加菜单进菜单栏
menubar.add(file);
menubar.add(edit);
menubar.add(download);
menubar.add(view);
menubar.add(option);
menubar.add(tool);
menubar.add(help);
//向工具栏添加按钮
toolbar.add(startBut);
toolbar.add(stopBut);
toolbar.add(addBut);
toolbar.add(preferenceBut);
toolbar.addSeparator();
toolbar.add(helpBut);
toolbar.addSeparator();
toolbar.add(exitBut);
//设置面板布局
contentPane.add(toolbar,BorderLayout.NORTH);
contentPane.add(leftsp,BorderLayout.CENTER);
contentPane.add(statusBar,BorderLayout.SOUTH);
setJMenuBar(menubar);
}
private DefaultMutableTreeNode createNodes(){
//向目录树里添加节点
DefaultMutableTreeNode rootNode=new DefaultMutableTreeNode("文件夹");
DefaultMutableTreeNode missionState=new DefaultMutableTreeNode("下载任务");
DefaultMutableTreeNode downDate=new DefaultMutableTreeNode("已下载");
DefaultMutableTreeNode today=new DefaultMutableTreeNode("今天");
DefaultMutableTreeNode yesterday=new DefaultMutableTreeNode("昨天");
DefaultMutableTreeNode lastWeek=new DefaultMutableTreeNode("上周");
DefaultMutableTreeNode normal=new DefaultMutableTreeNode("下载状态");
DefaultMutableTreeNode running=new DefaultMutableTreeNode("正在下载");
//实现目录树的功能
rootNode.add(missionState);
rootNode.add(downDate);
downDate.add(today);
downDate.add(yesterday);
downDate.add(lastWeek);
missionState.add(normal);
missionState.add(running);
return rootNode;
}
/*public static JProgressBar getProgressBar(){
return pb;
}*/
//实现启动按钮
public static void setStartTrue(){
startBut.setEnabled(true);
start.setEnabled(true);
}
public static void setStartFalse(){
startBut.setEnabled(false);
start.setEnabled(false);
}
//实现停止按钮
public static void setStopTrue(){
stopBut.setEnabled(true);
stop.setEnabled(true);
}
public static void setStopFalse(){
stopBut.setEnabled(false);
stop.setEnabled(false);
}
//实现添加按钮
public void showAddDialog(){
AddDialog ad=new AddDialog(this);
ad.setSize(380,340);
ad.setModal(true);
ad.center();
ad.setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
ad.show();
}
//实现Prefference按钮
public void showPrefference(){
Prefference p=new Prefference(this);
p.setSize(380,320);
p.setModal(true);
p.center();
p.setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
p.show();
}
//实现关于按钮
public void showAbout(){
About about=new About(this);
about.setSize(450,380);
about.setModal(false);
about.center();
about.setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
/*about.addWindowListener(new WindowAdapter(){
public void windowClosed(WindowEvent e){
about.dispose();
}
});*/
about.show();
}
//实现监听
class Listener implements ActionListener{
public void actionPerformed(ActionEvent e){
String arg=e.getActionCommand();
if(arg=="退出"){
System.exit(0);
}
else if(arg=="添加"){
showAddDialog();//
}
else if(arg=="开始"){
Utility.stop=false;
DownEnd de=new DownEnd();
de.start();
SplitFile split=new SplitFile();
split.start();
}
else if(arg=="停止"){
stopBut.setEnabled(false);
startBut.setEnabled(true);
Utility.stop=true;
}
else if(arg=="配置"){
showPrefference();
}
else if(arg=="书签"){
}
else if(arg=="主题帮助"||arg=="帮助"){
final Help help=new Help("帮助");
help.setSize(380,340);
Center c=new Center(help);
c.center();
help.setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
/* help.addWindowListener(new WindowAdapter(){
public void windowClosed(WindowEvent e){
help.dispose();
}
});*/
help.setVisible(true);
}
else if(arg=="关于制作室..."){
showAbout();
}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -