📄 mainwindow.java
字号:
topCard.show(panelRightTop,"deleted");
tableFinished.clearSelection();
bottomCard.show(panelRightBottom,"default");
tableDownFlag = false;
tableFinishedFlag = false;
tableDeletedFlag = true;
}
}
public void mouseEntered(MouseEvent e){}
public void mouseExited(MouseEvent e){}
public void mousePressed(MouseEvent e){}
public void mouseReleased(MouseEvent e){}
}
/**
*弹出式菜单组件事件监听------------------------------------------------------------
**/
class PopupActionListener implements ActionListener
{
public void actionPerformed(ActionEvent e)
{
JTable tempTable = null;
if(tableDownFlag)
{
tempTable = tableDown;
}
else if(tableFinishedFlag)
{
tempTable = tableFinished;
}
else
{
tempTable = tableDeleted;
}
String temp = ((JMenuItem)e.getSource()).getText();
if(temp.equals("开始"))
{
int i = tableDown.getSelectedRow();
if(i == -1)
{
JOptionPane.showMessageDialog(null,"请先选择一行进行操作","报错",JOptionPane.ERROR_MESSAGE);
}
else
{
if(!(Boolean)(statusList.get(i)))
{
statusList.remove(i);
statusList.add(i,new Boolean(true));
runningList.remove(i);
runningList.add(i,new Boolean(true));
((TaskManage)taskDownList.get(i)).runSubThread();
((TaskManage)taskDownList.get(i)).start();
}
else
{
//任务正在执行,则停止------------------------------------------------
if((Boolean)(runningList.get(i)))
{
//
}
//任务没有在执行,则执行----------------------------------------
else
{
((TaskManage)taskDownList.get(i)).threadNotify();
runningList.remove(i);
runningList.add(i,new Boolean(true));
}
}
}
}
if(temp.equals("暂停"))
{
int i = tableDown.getSelectedRow();
if(i == -1)
{
JOptionPane.showMessageDialog(null,"请先选择一行进行操作","报错",JOptionPane.ERROR_MESSAGE);
System.out.println(i);
}
else
{
((TaskManage)taskDownList.get(i)).stopFlag = true;
runningList.remove(i);
runningList.add(i,new Boolean(false));
}
}
if(temp.equals("全部开始"))
{
allRun();
}
if(temp.equals("全部暂停"))
{
for(int i = 0;i < taskDownList.size();i++)
{
((TaskManage)taskDownList.get(i)).stopFlag = true;
}
for(int i = 0;i < taskDownList.size();i++)
{
runningList.remove(i);
runningList.add(i,new Boolean(false));
}
}
if(temp.equals("删除"))
{
int i = tempTable.getSelectedRow();
if(i == -1)
{
JOptionPane.showMessageDialog(null,"请先选择一行进行操作","报错",JOptionPane.ERROR_MESSAGE);
System.out.println(i);
}
else
{
int option = JOptionPane.showConfirmDialog(null,"您真的删除此任务!","删除",JOptionPane.YES_NO_OPTION);
if(!(option == JOptionPane.YES_OPTION))
{
return;
}
//当前是tableDown--------------------------------------------------------
if(tempTable.equals(tableDown))
{
//将选择的线程终止掉-------------------------------------------------
TaskManage tempTaskManager = (TaskManage)taskDownList.get(i);
tempTaskManager.stopFlag = true;
tempTaskManager.changeFlag = true;
for(int j = 0;j < tempTaskManager.taskThreadList.size();j++)
{
((TaskThread)tempTaskManager.taskThreadList.get(j)).stopFlag = true;
}
//对表格进行同步处理---------------------------------------------------
synchronized(tableDownDetail)
{
ListChangeThread.deletedDownChanged(i);
}
bottomCard.show(panelRightBottom,"default");
}
//当前是tableFinished-----------------------------------------------------
else if(tempTable.equals(tableFinished))
{
//对表格进行同步处理---------------------------------------------------
synchronized(tableFinishedDetail)
{
ListChangeThread.deletedFinishedChanged(i);
}
bottomCard.show(panelRightBottom,"default");
}
//当前是tableDeleted-----------------------------------------------------
else if(tempTable.equals(tableDeleted))
{
//对表格进行同步处理---------------------------------------------------
synchronized(tableDeletedDetail)
{
ListChangeThread.deletedDeletedChanged(i);
}
bottomCard.show(panelRightBottom,"default");
}
}
}
if(temp.equals("重新添加到下载列表"))
{
int i = tempTable.getSelectedRow();
if(i == -1)
{
JOptionPane.showMessageDialog(null,"请先选择一行进行操作","报错",JOptionPane.ERROR_MESSAGE);
System.out.println(i);
}
else
{
if(((TaskManage)taskDeletedList.get(i)).totalDownLength == ((TaskManage)taskDeletedList.get(i)).fileLength)
{
JOptionPane.showMessageDialog(null,"该任务已经下载完毕!","报错",JOptionPane.ERROR_MESSAGE);
}
else
{
ListChangeThread.downDeletedChanged(i);
bottomCard.show(panelRightBottom,"default");
}
}
}
if(temp.equals("退出"))
{
System.out.println("退出");
dispose();
exitSave();
System.exit(0);
}
}
}
/**
*弹出式菜单显示监听---------------------------------------------------------------
**/
class PopupListener extends MouseAdapter
{
public void mouseReleased(MouseEvent e)
{
if(tableDownFlag)
{
popMenuItems[0].setEnabled(true);
popMenuItems[1].setEnabled(true);
popMenuItems[2].setEnabled(true);
popMenuItems[3].setEnabled(true);
popMenuItems[4].setEnabled(false);
}
else if(tableFinishedFlag)
{
popMenuItems[0].setEnabled(false);
popMenuItems[1].setEnabled(false);
popMenuItems[2].setEnabled(false);
popMenuItems[3].setEnabled(false);
popMenuItems[4].setEnabled(false);
}
else
{
popMenuItems[0].setEnabled(false);
popMenuItems[1].setEnabled(false);
popMenuItems[2].setEnabled(false);
popMenuItems[3].setEnabled(false);
popMenuItems[4].setEnabled(true);
}
maybeShowPopup(e);
}
private void maybeShowPopup(MouseEvent e)
{
if(e.isPopupTrigger())
{
popUp.show(e.getComponent(), e.getX(), e.getY());
}
}
}
/**
*菜单组件事件监听------------------------------------------------------------------
**/
class MenuItemListener implements ActionListener
{
public void actionPerformed(ActionEvent e)
{
String temp = ((JMenuItem)e.getSource()).getText();
if(temp.equals("新建任务"))
{
NewDialog newDialog = new NewDialog(null,true);
newDialog.show();
}
if(temp.equals("全部开始"))
{
allRun();
}
if(temp.equals("全部暂停"))
{
for(int i = 0;i < taskDownList.size();i++)
{
((TaskManage)taskDownList.get(i)).stopFlag = true;
}
for(int i = 0;i < taskDownList.size();i++)
{
runningList.remove(i);
runningList.add(i,new Boolean(false));
}
}
if(temp.equals("MP3"))
{
try
{
Process p = null;
p = Runtime.getRuntime().exec("C:\\Program Files\\Internet Explorer\\IEXPLORE.EXE mp3.baidu.com");
p.waitFor();
}
catch(Exception e1)
{
e1.printStackTrace();
}
}
if(temp.equals("软件"))
{
try
{
Process p = null;
p = Runtime.getRuntime().exec("C:\\Program Files\\Internet Explorer\\IEXPLORE.EXE www.newhua.com/");
p.waitFor();
}
catch(Exception e1)
{
e1.printStackTrace();
}
}
if(temp.equals("游戏"))
{
try
{
Process p = null;
p = Runtime.getRuntime().exec("C:\\Program Files\\Internet Explorer\\IEXPLORE.EXE www.yxdown.com/");
p.waitFor();
}
catch(Exception e1)
{
e1.printStackTrace();
}
}
if(temp.equals("网格"))
{
if(!gridFlag)
{
tableDown.setShowGrid(true);
tableFinished.setShowGrid(true);
gridFlag = true;
}
else
{
tableDown.setShowGrid(false);
tableFinished.setShowGrid(false);
gridFlag = false;
}
}
if(temp.equals("详细情况"))
{
if(!detailFlag)
{
jspRight.setBottomComponent(panelRightBottom);
jspRight.setDividerLocation(350);
detailFlag = true;
}
else
{
jspRight.remove(panelRightBottom);
detailFlag = false;
}
}
if(temp.equals("新建数据库"))
{
clearUp();
System.out.println("Old index:"+index);
index++;
currentIndex = index;
System.out.println("New index:"+index);
}
if(temp.equals("打开旧数据库"))
{
JFileChooser fileChooser = new JFileChooser();
fileChooser.setCurrentDirectory(new File(".\\Info\\"));
if(fileChooser.showOpenDialog(null)==JFileChooser.CANCEL_OPTION)
{
return;
}
//清理工作---------------------------------------------------------------
clearUp();
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -