5: 定时关机---小程序

 

    这是一个通过Java 利用 EXE 来运作的一个小关机程序

   目前第二种方法还不能 取消其关机 的进程(通过在 命令窗口 中输入at 可查看) 希望看到的 大侠们帮帮忙

 


public class  DS{

	//定义属性
	private javax.swing.JLabel la_name;
	private javax.swing.JLabel ka_name;
	private javax.swing.JTextField jta_name;
	private javax.swing.JLabel A_name;
	private javax.swing.JTextField B_name;
	private javax.swing.JLabel C_name;
	private javax.swing.JLabel D_name;
	private javax.swing.JLabel E_name;
	private javax.swing.JLabel F_name;
	private javax.swing.JLabel G_name;
	private String s="00:00";
	int e;
	  
	
	
	
//程序入口
public static void main(String args[]){
  DS tf=new DS();
  tf.showFrame();
  }
 
//显示一个界面的方法
public void showFrame(){
 javax.swing.JFrame frame=new javax.swing.JFrame();
 frame.setTitle("             定时关机 ");
 //加一个JPanel 对象   使界面更美观
 // javax.swing.JPanel panel=new javax.swing.JPanel();
  //panel.setSize(300,100);
 
 
//加上流式布局管理器对象
java.awt.FlowLayout fl=new java.awt.FlowLayout();
 frame.setLayout(fl);
 la_name=new javax.swing.JLabel(" 计划关闭计算机于: ");     //创建一个标签
 jta_name=new javax.swing.JTextField(4);                     //创建一个文本框
 ka_name=new javax.swing.JLabel( " 分钟后! ");              //创建一个标签
 A_name=new javax.swing.JLabel("计划关闭计算机于:");
 B_name=new javax.swing.JTextField(5);
 C_name=new javax.swing.JLabel("某时某分");
 D_name=new javax.swing.JLabel(" (注:慎用第二种关机方法,目前还不能取消其关机) ");
 E_name=new javax.swing.JLabel("  *-* *-* *-* *-* *-* *-* *-* *-* *-* *-* *-* *-* *-* *-* *-* *-* *-* *-* *-* ");
 F_name=new javax.swing.JLabel("      ");
 G_name=new javax.swing.JLabel("  *-* *-* *-* *-* *-* *-* *-* *-* *-* *-* *-* *-* *-* *-* *-* *-* *-* *-* *-* ");
 String l="30";
 B_name.setText(s);
 jta_name.setText(l);

//创建一个按钮
 javax.swing.JButton yunxing=new javax.swing.JButton( " 运行 ");

//创建一个按钮监听器
    yunxing.addActionListener(new java.awt.event.ActionListener(){
    public void actionPerformed(java.awt.event.ActionEvent e){
    processEvent1(); }});
    jta_name.addActionListener(new java.awt.event.ActionListener(){
    public void actionPerformed(java.awt.event.ActionEvent e){
    processEvent1();}});
    B_name.addActionListener(new java.awt.event.ActionListener(){
    public void actionPerformed(java.awt.event.ActionEvent e){
    processEvent1();}} );

//创建另一个按钮
javax.swing.JButton quxiao=new javax.swing.JButton( " 取消//取消关闭 ");

//创建一个按钮监听器
    quxiao.addActionListener(new java.awt.event.ActionListener(){
    public void actionPerformed(java.awt.event.ActionEvent e){
    processEvent2();
}} );



//添加
//frame.add(panel);
 
 
frame.add(la_name);
frame.add(jta_name);
frame.add(ka_name);
frame.add(A_name);
frame.add(B_name);
frame.add(C_name);
frame.add(G_name);
frame.add(yunxing);
frame.add(F_name);
frame.add(quxiao);
frame.add(E_name);
frame.add(D_name);
frame.setSize(290,200);  //窗体大小
frame.setResizable(false);
frame.setLocationRelativeTo(null);
frame.setDefaultCloseOperation(3);
frame.setVisible(true);  //窗体显示
}

//另一个窗体  用来提示用时间关机的方法已达成
public void frame1(){
	javax.swing.JFrame frame2=new javax.swing.JFrame();
	la_name=new javax.swing.JLabel(" 计 划 关 闭 计 算 机    已 成 功!!! ");
	frame2.add(la_name); 
	frame2.setSize(220,100);  //窗体大小
	frame2.setResizable(false);
	frame2.setLocationRelativeTo(null);
	frame2.setVisible(true);  //窗体显示
}

//关机的方法
 private void processEvent1(){
	String TIME2=B_name.getText();
	 if(TIME2.equals(s)==true){
	 e=1;
	 }

	 //第一种          用 分钟的关机
if (  e == 1 ){
   String TIME= jta_name.getText();//得到输入
   int i = Integer.parseInt(TIME); 
   int T=60*i;
    String.valueOf(T);
    String aa="cmd.exe /c  start shutdown -s -t "+T;
 Runtime AA=Runtime.getRuntime();
	try{
     AA.exec(aa);
     //由于这种方法能够自己显示出来  所以不需要弹出一个提示框
} catch( Exception ex){
                    ex.printStackTrace();
                }
}
//第二种     用时间的关机
else if( e !=1 ){
	 String bb="at "+TIME2+" shutdown -r "  ;
	 Runtime AA=Runtime.getRuntime();
		try{
	     AA.exec(bb);
	     //弹出一个提示框,显示已达成关闭命令
	     DS gf=new DS();
	     gf.frame1();     
	} catch( Exception ex){
	                    ex.printStackTrace();
	                }
	
	
}
 }


//取消关机的方法
private void processEvent2(){
  if(e==1){
	String dd= "cmd.exe  /c  start  shutdown -a  ";  
     Runtime AA=Runtime.getRuntime();
	try{
     AA.exec(dd);
     System.out.println("- 取消 1 -" );
     System.exit(0);
} catch( Exception ex){
                ex.printStackTrace();
                }
  }
  else if( e !=1 ){	
  String dd= "cmd.exe  /c  start  shutdown -a  ";  
  Runtime AA=Runtime.getRuntime();
	try{
   AA.exec(dd);
   System.out.println("- 取消 2 -" );
   System.exit(0);
} catch( Exception ex){
              ex.printStackTrace();
       }
  
} 
}
}



 

 

你可能感兴趣的:(C++,c,swing,C#,F#)