精华内容
下载资源
问答
  • Java应用程序窗口关闭六种方法。。。。。。。。。。。
  • Java关闭窗体的六种方法Java关闭窗体的六种方法Java关闭窗体的六种方法
  • java应用程序窗口关闭六种方法
    项目推荐

    推荐个人GItHub开源项目(iot-dc3)一个开源的、分布式的物联网(IOT)平台,用于快速开发物联网项目和管理拓展。https://github.com/pnoker/iot-dc3


    ####1.使用使用JFrame的enableEvents和processWindowEvent

       import java.awt.*; 
      import java.awt.event.*; 
      import javax.swing.*; 
      public class Frame1 extends JFrame { 
      public Frame1() { 
      enableEvents(AWTEvent.WINDOW_EVENT_MASK); 
      this.setSize(new Dimension(400, 300)); 
      this.setTitle("Frame1"); 
      } 
      protected void processWindowEvent(WindowEvent e) { 
      super.processWindowEvent(e); 
      if (e.getID() == WindowEvent.WINDOW_CLOSING) { 
      System.exit(0); 
      } 
      } 
      } 
    

    ####2.直接实现WindowListener接口

       import java.awt.*; 
      import java.awt.event.*; 
      public class Frame1 extends Frame implements WindowListener { 
      public Frame1() { 
      this.setSize(new Dimension(400, 300)); 
      this.setTitle("Frame1"); 
      this.addWindowListener(this); 
      } 
      public void windowClosing(WindowEvent windowEvent) { 
      System.exit(0); 
      } 
      public void windowOpened(WindowEvent windowEvent) { } 
      public void windowClosed(WindowEvent windowEvent) { } 
      public void windowIconified(WindowEvent windowEvent) { } 
      public void windowDeiconified(WindowEvent windowEvent) { } 
      public void windowActivated(WindowEvent windowEvent) { } 
      public void windowDeactivated(WindowEvent windowEvent) { } 
      } 
    

    ####3.直接继承窗体适配器WindowAdapter

       import java.awt.*; 
      import java.awt.event.*; 
      public class Frame1 extends WindowAdapter { 
      public Frame1() { 
      Frame f=new Frame(); 
      f.setSize(new Dimension(400, 300)); 
      f.setTitle("Frame1"); 
      f.addWindowListener(this); 
      f.setVisible(true); 
      } 
      public static void main(String[] s){ 
      new Frame1(); 
      } 
      public void windowClosing(WindowEvent windowEvent) { 
      System.exit(0); 
      } 
      } 
    

    ####4.间接继承窗体适配器WindowAdapter

       import java.awt.*; 
      import java.awt.event.*; 
      public class Frame1 extends Frame { 
      public Frame1() { 
      this.setSize(new Dimension(400, 300)); 
      this.setTitle("Frame1"); 
      this.addWindowListener(new winAdapter()); 
      this.setVisible(true); 
      } 
      public static void main(String[] s){ 
      new Frame1(); 
      } 
      } 
      class winAdapter extends WindowAdapter{ 
      public void windowClosing(WindowEvent windowEvent) { 
      System.exit(0); 
      } 
      } 
    

    ####5.间接实现WindowListener接口

       import java.awt.*; 
      import java.awt.event.*; 
      public class Frame1 extends Frame { 
      public Frame1() { 
      this.setSize(new Dimension(400, 300)); 
      this.setTitle("Frame1"); 
      this.addWindowListener(new winEventHandle()); 
      this.setVisible(true); 
      } 
      public static void main(String[] s){ 
      new Frame1(); 
      } 
      } 
      class winEventHandle implements WindowListener { 
      public void windowClosing(WindowEvent windowEvent) { 
      System.exit(0); 
      } 
      public void windowOpened(WindowEvent windowEvent) { } 
      public void windowClosed(WindowEvent windowEvent) { } 
      public void windowIconified(WindowEvent windowEvent) { } 
      public void windowDeiconified(WindowEvent windowEvent) { } 
      public void windowActivated(WindowEvent windowEvent) { } 
      public void windowDeactivated(WindowEvent windowEvent) { } 
      } 
    

    ####6.使用Inner Class

       import java.awt.*; 
      import java.awt.event.*; 
      public class Frame1{ 
      public Frame1(){ 
      Frame f=new Frame(); 
      f.addWindowListener(new WindowAdapter(){ 
      public void windowClosing(WindowEvent e){ 
      System.exit(0); 
      } 
      }); 
      f.setSize(new Dimension(400, 300)); 
      f.setVisible(true); 
      } 
      public static void main(String[] s){ 
      new Frame1(); 
      } 
      } 
    
    
      Jframe的关闭方法:
    
    
       setDefaultCloseOperation(EXIT_ON_CLOSE); 
      frame的关闭方法如下: 
      this.addWindowListener(new java.awt.event.WindowAdapter() { 
      public void windowClosing(java.awt.event.WindowEvent e) { 
      System.exit(0); 
      } 
      }); 
    
    展开全文
  • java 窗口关闭六种方法

    千次阅读 2010-01-10 14:11:00
    1.使用JFrame的enableEvents和...frame的关闭方法如下: this.addWindowListener(new java.awt.event.WindowAdapter() { public void windowClosing(java.awt.event.WindowEvent e) { System.exit(0); } });

    1.使用JFrame的enableEvents和processWindowEvent
    //Frame1.java
    import java.awt.*;
    import java.awt.event.*;
    import javax.swing.*;
    public class Frame1 extends JFrame {
      public Frame1() {
        enableEvents(AWTEvent.WINDOW_EVENT_MASK);
        this.setSize(new Dimension(400, 300));
        this.setTitle("Frame1");
      }
      protected void processWindowEvent(WindowEvent e) {
        super.processWindowEvent(e);
        if (e.getID() == WindowEvent.WINDOW_CLOSING) {
          System.exit(0);
        }
      }
    }
    2.直接实现WindowListener接口
    //Frame1.java
    import java.awt.*;
    import java.awt.event.*;
    public class Frame1 extends Frame implements WindowListener {
      public Frame1() {
        this.setSize(new Dimension(400, 300));
        this.setTitle("Frame1");
        this.addWindowListener(this);
      }
      public void windowClosing(WindowEvent windowEvent) {
        System.exit(0);
      }
      public void windowOpened(WindowEvent windowEvent) {  }
      public void windowClosed(WindowEvent windowEvent) {  }
      public void windowIconified(WindowEvent windowEvent) {  }
      public void windowDeiconified(WindowEvent windowEvent) {  }
      public void windowActivated(WindowEvent windowEvent) {  }
      public void windowDeactivated(WindowEvent windowEvent) {  }
    }
    3.直接继承窗体适配器WindowAdapter
    //Frame1.java
    import java.awt.*;
    import java.awt.event.*;
    public class Frame1 extends  WindowAdapter {
      public Frame1() {
        Frame f=new Frame();
        f.setSize(new Dimension(400, 300));
        f.setTitle("Frame1");
        f.addWindowListener(this);
        f.setVisible(true);
      }
      public static void main(String[] s){
        new Frame1();
      }
      public void windowClosing(WindowEvent windowEvent) {
        System.exit(0);
      }
    }
    4.间接继承窗体适配器WindowAdapter
    //Frame1.java
    import java.awt.*;
    import java.awt.event.*;
    public class Frame1 extends  Frame {
      public Frame1() {
        this.setSize(new Dimension(400, 300));
        this.setTitle("Frame1");
        this.addWindowListener(new winAdapter());
        this.setVisible(true);
      }
      public static void main(String[] s){
        new Frame1();
      }
    }
    class winAdapter extends WindowAdapter{
      public void windowClosing(WindowEvent windowEvent) {
        System.exit(0);
      }
    }
    5.间接实现WindowListener接口
    //Frame1.java
    import java.awt.*;
    import java.awt.event.*;
    public class Frame1 extends  Frame {
      public Frame1() {
        this.setSize(new Dimension(400, 300));
        this.setTitle("Frame1");
        this.addWindowListener(new winEventHandle());
        this.setVisible(true);
      }
      public static void main(String[] s){
        new Frame1();
      }
    }
    class winEventHandle implements WindowListener {
      public void windowClosing(WindowEvent windowEvent) {
        System.exit(0);
      }
      public void windowOpened(WindowEvent windowEvent) {  }
      public void windowClosed(WindowEvent windowEvent) {  }
      public void windowIconified(WindowEvent windowEvent) {  }
      public void windowDeiconified(WindowEvent windowEvent) {  }
      public void windowActivated(WindowEvent windowEvent) {  }
      public void windowDeactivated(WindowEvent windowEvent) {  }
    }
    6.使用Inner Class
    //Frame1.java
    import java.awt.*;
    import java.awt.event.*;
    public class Frame1{
      public Frame1(){
        Frame f=new Frame();
        f.addWindowListener(new WindowAdapter(){
          public void windowClosing(WindowEvent e){
            System.exit(0);
          }
        });
        f.setSize(new Dimension(400, 300));
        f.setVisible(true);
      }
      public static void main(String[] s){
        new Frame1();
      }
    }

     

     

    Jframe的关闭方法:

    setDefaultCloseOperation(EXIT_ON_CLOSE);

    frame的关闭方法如下:
    this.addWindowListener(new java.awt.event.WindowAdapter() {
    public void windowClosing(java.awt.event.WindowEvent e) {
    System.exit(0);
    }
    });

    展开全文
  • 1. 六种方法调用多窗口 参考原代码链接 链接:https //pan.baidu.com/s/1fiK4l8JfO-udHhdI0FZWfA 提取码:101g # !/usr/bin/python3 # -*- coding: utf-8 -*- # sys.path.append('D:\\tcy_module') #...

    1. 六种方法调用多窗口

    参考原代码链接

    链接:https//pan.baidu.com/s/1fiK4l8JfO-udHhdI0FZWfA 
    提取码:101g  
    # !/usr/bin/python3
    # -*- coding: utf-8 -*-
    # sys.path.append('D:\\tcy_module')
    
    #===============================================================================
    #0.1.导入对话框文件(xx.ui界面文件;绘制完成转换成xx.py文件;内容不做修改)
    #    界面和程序分离,引用界面引用界面封装类iUi_xx(QDialog,Ui_xx)
    import MainDlg
    from MainDlg import Ui_MainDlg
    from AutoRunDlg import Ui_AutoRunDlg
    from HandRunDlg import Ui_HandRunDlg
    from SetDlg import Ui_SetDlg
    from PressureImageDlg import Ui_PressureImageDlg
    from TableDlg import Ui_TableDlg
    #0.2.导入相关包
    from PyQt5.QtCore import pyqtSlot
    import pyqtgraph as pg
    
    from PyQt5 import QtWidgets
    from PyQt5.QtWidgets import QApplication, QWidget,QMainWindow,QDialog
    from PyQt5.QtWidgets import QApplication
    from PyQt5.QtCore import pyqtSignal,QObject,QEvent
    from PyQt5.QtCore import QTimer
    
    import numpy as np
    import sys,time
    #===============================================================================
    #1.1.窗口界面类封装
    """ 
    class iMainWindow(QMainWindow,Ui_MainWindow):#带菜单的主窗口(类似Dlg)
        def __init__(self,parent=None):
            super(iMainWindow,self).__init__(parent)
            self.setupUi(self)
    """
    #1.2.1.对话框界面类封装(窗口界面不多直接用下面类似代码封装)
    class MainDlg(QDialog,Ui_MainDlg):     #主界面
        def __init__(self,parent=None):
            super(MainDlg,self).__init__(parent)
            self.setupUi(self)
            # self.AutoRunBtn.clicked.connect(self.click_button)    #单击
            self.AutoRunBtn.pressed.connect(self.AutoRunBtn_pressed)#按键按下
            self.HandRunBtn.pressed.connect(self.HandRunBtn_pressed)#按键按下
            self.SetBtn.pressed.connect(self.SetBtn_pressed)        #按键按下
            self.ImageBtn.pressed.connect(self.ImageBtn_pressed)  # 按键按下
            self.TableBtn.pressed.connect(self.TableBtn_pressed)  # 按键按下
        def AutoRunBtn_pressed(self):    #方法1:(推荐用法)主Dlg调用子对话框
            dlg = AutoRunDlg()           # 实例化子窗口
            # print('dlg_name1=',dlg.objectName(),
            #       dlg.isActiveWindow())#dlg_name1= AutoRunDlg False
            dlg.show()
            # print('dlg_name2=',dlg.objectName(),
            #       dlg.isActiveWindow())#dlg_name2= AutoRunDlg True
            return dlg.exec()
    
        def HandRunBtn_pressed(self):  # 方法1:(推荐用法)主Dlg调用子对话框
            dlg = HandRunDlg()         # 实例化子窗口
            dlg.show()
            return dlg.exec()
    
        def SetBtn_pressed(self):  # 方法2:主Dlg调用子对话框
            dlg = QDialog()
            ui = Ui_SetDlg()       # SetDlg.Ui_setDlg
            ui.setupUi(dlg)
            dlg.show()
            result=dlg.exec()
            # if rsp == QtWidgets.QDialog.Accepted:
            #     self.label.setText("点击了OK")
            #     self.statusTip()
            # else:
            #     self.label.setText("点击了Cannel")
        def ImageBtn_pressed(self):  # 方法3:(推荐用法)主Dlg调用子对话框
            dlg = PressureImageDlg() # 实例化子窗口
            dlg.show()
            return dlg.exec()
        # def _set_table(self,dlg):
        #     id = ['1010', '1011', '1012', '1013']
        #     name = ['Tom', 'Bob', 'Jim', 'Mark']
        #     sex = ['男', '男', '女', '男']
        #     for i in range(4):
        #         item=QtWidgets.QTableWidgetItem(id[i])
        #         dlg.tableWidget.setItem(i,0,item)
        #         dlg.tableWidget.setItem(i,1,item)
        #         dlg.tableWidget.setItem(i,2,item)
        def TableBtn_pressed(self):
            dlg = TableDlg()
            dlg.show()
            return dlg.exec()
        #===========================================
        #窗口事件
        def changeEvent(self, e):
            if e.type() == QEvent.WindowStateChange:
                if self.isMinimized():
                    print("窗口最小化")
                elif self.isMaximized():
                    print("窗口最大化")
                elif self.isFullScreen():
                    print("全屏显示")
                elif self.isActiveWindow():
                    print("活动窗口")
                QDialog.changeEvent(self, e)
    
        def showEvent(self, e):
            self.activateWindow()
            print("窗口显示",self.isActiveWindow())
            QDialog.showEvent(self, e)
    
        def hideEvent(self, e):
            print("窗口隐藏",self.isActiveWindow())
            QDialog.hideEvent(self, e)
        # ===========================================
    class AutoRunDlg(QDialog,Ui_AutoRunDlg):#自动运行界面
        def __init__(self,parent=None):
            super(AutoRunDlg,self).__init__(parent)
            self.setupUi(self)
    
    class HandRunDlg(QDialog,Ui_HandRunDlg):#手动界面
        def __init__(self,parent=None):
            super(HandRunDlg,self).__init__(parent)
            self.setupUi(self)
    
    class SetDlg(QDialog,Ui_SetDlg):        #参数设置界面
        def __init__(self,parent=None):
            super(SetDlg,self).__init__(parent)
            self.setupUi(self)
    
    class TableDlg(QDialog,Ui_TableDlg):    #数据表界面
        def __init__(self,parent=None):
            super(TableDlg,self).__init__(parent)
            self.setupUi(self)
            # id = ['1010', '1011', '1012', '1013']
            # name = ['Tom', 'Bob', 'Jim', 'Mark']
            # sex = ['男', '男', '女', '男']
            # for i in range(4):#初始化表数据
            #     item1=QtWidgets.QTableWidgetItem(id[i])
            #     item2 = QtWidgets.QTableWidgetItem(name[i])
            #     item3 = QtWidgets.QTableWidgetItem(sex[i])
            #     self.tableWidget.setItem(i,0,item1)
            #     self.tableWidget.setItem(i,1,item2)
            #     self.tableWidget.setItem(i,2,item3)
            self.InsertBtn.pressed.connect(self.InsertDataBtn)  # 按键按下
    
        def InsertDataBtn(self):
            id = ['2010', '2011', '2012', '2013']
            name = ['Ben', 'Smith', 'May', 'Jack']
            sex = ['男', '男', '女', '男']
            for i in range(0,4):  # 初始化表数据
                item1 = QtWidgets.QTableWidgetItem(id[i])
                item2 = QtWidgets.QTableWidgetItem(name[i])
                item3 = QtWidgets.QTableWidgetItem(sex[i])
                self.tableWidget.setItem(i, 0, item1)
                self.tableWidget.setItem(i, 1, item2)
                self.tableWidget.setItem(i, 2, item3)
    
    
    #==============================================================================
    class PressureImageDlg(QDialog,Ui_PressureImageDlg):#对话框中显示压力曲线
        """
        提升窗口部件步骤:
        1)qt Designer--新建对话框QDialog--将2个QWidget控件拖到对话框内--
           将2个对象命名为graph1,graph2
        2)选择graph1--右键--提升为--基类名称:QWidget
                                 提升的类名称:GraphicsLayoutWidget#类名称包含在头文件中
                                 头文件:pyqtgraph.h#固定
           --输入完成点添加--点提升--退出
        3)选择graph2--右键--提升为(上面)--点开小三角:显示GraphicsLayoutWidget
           --点击GraphicsLayoutWidget--自动退出--完成
        说明:上面的提升的类名称除非你明白意思,否则按上面的设置,单都必须在头文件中。
        """
        def __init__(self, parent=None):
            """
            Constructor
            @param parent reference to the parent widget
            @type QWidget
            """
            super(PressureImageDlg,self).__init__(parent)
            # 设置
            pg.setConfigOption('background', '#f0f0f0') # 背景灰色
            pg.setConfigOption('foreground','d') # 前景(坐标轴,线条,文本)黑色
            pg.setConfigOptions(antialias=True)  # 曲线光滑;多个参数设置
            #pg.setConfigOption('antialias',True)# 等价;仅接受一个参数
            self.setupUi(self)
    
        @pyqtSlot()                #(参数)装饰器信号和槽
        def on_H_Btn_clicked(self):#on_发送者名称_发射信号名称(self,参数)
            """
            Slot documentation goes here.
            """
            self.graph1.clear()  # 清空里面的内容,否则发生重复绘图
    
            '''第一种绘图方式'''
            self.graph1.addPlot(title="绘图单条线", y=np.random.normal(size=100),
                                    pen=pg.mkPen(color='b', width=2))
            '''第二种绘图方式'''
            plt2 = self.graph1.addPlot(title='绘制多条线')
            plt2.plot(np.random.normal(size=150), pen=pg.mkPen(color='r', width=2),
                      name="Red curve")  # pg.mkPen设置线条颜色为红色,宽度为2。
            plt2.plot(np.random.normal(size=110) + 5, pen=(0, 255, 0), name="Green curve")
            plt2.plot(np.random.normal(size=120) + 10, pen=(0, 0, 255), name="Blue curve")
    
        @pyqtSlot()
        def on_V_Btn_clicked(self):
            """
            Slot documentation goes here.
            """
            '''如果没有进行第一次绘图,就开始绘图,然后做绘图标记,否则就什么都不做'''
            try:
                self.first_plot_flag  # 检测是否进行过第一次绘图。
            except:
                plt = self.graph2.addPlot(title='绘制条状图')
                x = np.arange(10)
                y1 = np.sin(x)
                y2 = 1.1 * np.sin(x + 1)
                y3 = 1.2 * np.sin(x + 2)
            # except:
                bg1 = pg.BarGraphItem(x=x, height=y1, width=0.3, brush='r')
                bg2 = pg.BarGraphItem(x=x + 0.33, height=y2, width=0.3, brush='g')
                bg3 = pg.BarGraphItem(x=x + 0.66, height=y3, width=0.3, brush='b')
    
                plt.addItem(bg1)
                plt.addItem(bg2)
                plt.addItem(bg3)
    
                self.graph2.nextRow()
    
                p4 = self.graph2.addPlot(title="参数图+显示网格")
                x = np.cos(np.linspace(0, 2 * np.pi, 1000))
                y = np.sin(np.linspace(0, 4 * np.pi, 1000))
                p4.plot(x, y, pen=pg.mkPen(color='d', width=2))
                p4.showGrid(x=True, y=True)  # 显示网格
    
                self.first_plot_flag = True  # 第一次绘图后进行标记
            # except:pass
    
    # if __name__ == "__main__":
    #     import sys
    #
    #     app = QApplication(sys.argv)
    #     ui = PressureImageDlg()
    #     ui.show()
    #     sys.exit(app.exec())
    
    #==============================================================================
    if __name__ == '__main__':
        app = QApplication(sys.argv)
        dlg = MainDlg()  # iMainWindow()
    
        # 方法4:面向对象--主界面调用子窗口(不推荐)
        # btn = dlg.HandRunBtn
        # ChildDlg_HandRun = HandRunDlg()             # 实例化子窗口
        # btn.clicked.connect(ChildDlg_HandRun.show)  # 按钮绑定事件
        dlg.show()
        sys.exit(app.exec())
    
        #方法5:面向过程--主界面调用子窗口(不推荐)
        # app = QApplication(sys.argv)
        # dlg = QWidget()
        # ui = Ui_MainDlg()  # MainDlg.Ui_Dlg()
        # ui.setupUi(dlg)
        # dlg.show()
        # sys.exit(app.exec())
    #==============================================================================
    #==============================================================================
    def show_pyqtgraph():
        from PyQt5 import QtGui
        import pyqtgraph as pg
        import numpy as np
        x = np.random.normal(size=1000)
        y = np.random.normal(size=1000)
        pg.plot(x, y, pen=None, symbol='o')
        import numpy as np
        import pyqtgraph as pg
    
        data = np.random.normal(size=1000)
        pg.plot(data, title="Simplest possible plotting example")
    
        data = np.random.normal(size=(500,500))
        pg.image(data, title="Simplest possible image example")
    
    
        ## Start Qt event loop unless running in interactive mode or using pyside.
        if __name__ == '__main__':
            import sys
            if sys.flags.interactive != 1 or not hasattr(QtCore, 'PYQT_VERSION'):
                pg.QtGui.QApplication.exec_()
    展开全文
  • 命令行打开文件夹窗口六种方法

    千次阅读 2013-12-04 16:52:00
    在很快捷工具的配置里面都会用到,掌握一些没坏处的。 前几天测试,发现了一些以前没注意的地方 先说系统,我用的XP,其它系统可能会有不同 一、Shell:command打开各种外壳文件夹 我列几个常用的,其它的...

    在很多快捷工具的配置里面都会用到,多掌握一些没坏处的。

    前几天测试,发现了一些以前没注意的地方

    先说系统,我用的XP,其它系统可能会有不同

    一、Shell:command 打开各种外壳文件夹

    我列几个常用的,其它的自己放百狗搜吧

    shell:Common document 共享文档
    shell:ConnectionsFolder 网络连接
    shell:ControlPanelFolder 控制面板
    shell:Cookies Cookies
    shell:Desktop 桌面
    shell:DriveFolder 我的电脑
    shell:Favorites 收藏夹
    shell:NetworkFolder 网上邻居
    shell:Personal 我的文档
    shell:RecycleBinFolder 回收站
    shell:SendTo “发送到”
    shell:Startup 开始菜单-启动
    shell:System 系统文件夹
    shell:Windows Windows文件夹

    这种方法只能打开系统定义的文件夹,速度很快,效率最高,优先考虑

    但是,不能在cmd命令行下使用,所以很多软件不支持,比如我用的 Maxthon1.6 不支持这个作为外部工具

    二、explorer.exe ::常用电脑类标识符CLSID

    同样列几个常用的,其他自己搜

    {148BD520-A2AB-11CE-B11F-00AA00530503} 计划任务
    {1f4de370-d627-11d1-ba4f-00a0c91eedba} 搜索-计算机
    {208D2C60-3AEA-1069-A2D7-08002B30309D} 网上邻居
    {20D04FE0-3AEA-1069-A2D8-08002B30309D} 我的电脑
    {21EC2020-3AEA-1069-A2DD-08002B30309D} 控制面板
    {645FF040-5081-101B-9F08-00AA002F954E} 回收站

    同前一种shell方法一样,都是只能打开系统定义的,不过它支持注册表注册

    三、explorer.exe + 路径

    和上一种类标识符法其实是一个原理

    explorer.exe    C:\windows

    explorer.exe 命令支持环境变量(cmd下用set命令查看),可以加参数,在打开文件夹的同时选中目标,nice

    explorer /n,/select,%windir%

    explorer.exe 命令的其它参数可以自己放狗找

    二和三,explorer.exe这种方法通吃命令行,我之前一直用,但前几天发现,这种方法有个致命缺点,就是 新建explorer.exe进程

    我们可以验证一下,Win+R调出运行框,运行 explorer.exe ::{20D04FE0-3AEA-1069-A2D8-08002B30309D} 打开我的电脑

    然后按 ctrl+shift+esc 调出任务管理器,按进程名称排序,你会发现多了一个 explorer.exe 进程。

    这真是太糟糕了,于是我重写了自己所有的快捷工具中的打开方式。。。。。。

    四、直接写路径

    这种方法很绿色,WIn+R支持,hoekey支持,Maxthon外部工具设定也支持。

    但是,cmd不支持(dos下直接写路径当然没效果)。

    cmd有个内部命令start,也就是我们下面要说的

    五、start + 路径

    内部命令 start 启动单独的“命令提示符”窗口来运行指定程序或命令。

    这个命令可以运行已经注册的类文件,比如txt,MP3等等,用注册表里默认open的程序打开该类文件,这里就不展开说了。start命令的参数可以在cmd下用 /?看中文帮助。

    我只说用 start 打开文件夹路径的方法

    在cmd下,start d:\ 可以打开D盘窗口,但是Win+R里面不行。为什么呢?因为 start 是 cmd 的内部命令。

    在 Win+R 里面和其它软件里面,可以这么写

    cmd /c start D:\

    上面的命令还会有 cmd 黑框一闪,当然我们可以用 nircmd代替cmd,写成

    nircmd execmd start D:\

    start方法不会新建explorer.exe进程,软件通吃,使用时要注意当路径含有空格时的写法

    start C:\windows 成功

    start C:\Program Files 失败

    start "C:\Program Files" 加引号还是失败

    这是因为start 默认第一对"里面是它的 ["title"] 参数

    正确的写法是 start "" "C:\Program Files" 

    这里把第一对空"作为 start 的 ["title"] 参数,后一对",则是 [command/program]

    start 支持 环境变量,如果环境变量路径带空格,写法是 start "" "%ProgramFiles%"

    还有个 /max 参数,最大化打开的窗口

    六、建立文件夹快捷方式 .lnk

    方法很简单,右键一拖就可以了。

    不会新建explorer.exe进程,不会像start一样受空格限制,还能随意改图标。

    缺点就是会多一个文件。

    下面的图是我的 Maxthon1.6 的外部工具栏

    第1个电脑图标是 用方法二explorer.exe +类表示符创建的 打开我的电脑,因为马桶不支持Shell:command

    第2个用的方法四,直接路径,显示的是文件夹图标

    第3个图标是用方法六,快捷方式lnk法,改了图标。

    后面几个是工具

    最后那个,也是D盘的文件夹快捷方式,用的方法四,直接路径D:\,图标是用 autorun.inf 法改的

    --------------------------------------------------------------------------------

    补充:

    shell方法可以在命令行调用

    explorer.exe shell:sendto
    或者
    start shell:sendto

    cmd /c start shell:sendto

    转载于:https://www.cnblogs.com/bulemaple/articles/3457920.html

    展开全文
  •  frame的关闭方法如下:  this.addWindowListener(new java.awt.event.WindowAdapter() {  public void windowClosing(java.awt.event.WindowEvent e) {  System.exit(0);  }  }); “`
  • Mac强制关闭软件的六种方法

    千次阅读 2020-12-01 14:42:16
    这个时候我们就需要强制退出这个程序了,那么苹果电脑怎么强制关闭呢?接下来跟着小编一起来看看吧~ 一 尝试快捷键Command+Q 选择当前处于界面最前端的应用,同时按住Command+Q退出程序,并不代表强制退出应用,...
  • layui-open关闭自身窗口解决方法

    万次阅读 2018-05-24 00:09:00
    关于它似乎没有太介绍的必要,唯一让你疑惑的,可能就是这个 index 了吧。事实上它非常容易得到。 code layui.code //当你想关闭当前页的某个层时 var index = layer.open(); var index = layer.alert(); var ...
  • 可并排打开个EXCEL文件,excel2007、2010都可用。
  • Android8.0多窗口调研

    千次阅读 2018-05-10 11:13:41
    Android8.0多窗口调研一、概述Android8.0上面原生的多窗口功能支持四模式:全屏、分屏、画中画、FreeForm模式。多窗口主要涉及ActivityManagerService、WindowManagerService、Input三个模块。以下分析基于Android...
  • 如何修改PyCharm窗口背景颜色?

    千次阅读 多人点赞 2019-12-25 09:42:25
    PyCharm是一Python IDE,它可以提高用户在使用Python语言时的开发效率,它的默认窗口颜色是白色,但有时候我们希望窗口颜色较深一些,这样有利于我们夜晚学习。那么如何修改PyCharm窗口背景颜色呢?接下来我来和...
  • 强制退出Mac程序的六种方法

    万次阅读 2018-06-06 18:13:43
    1、使用键盘快捷键强制退出处于活跃状态的Mac程序快捷键:Command+Option+Shift+Esc这样按住一两秒钟,就可以强制退出当前程序了,算是最方便的一种方法。2、打开强制退出程序窗口使用快捷键:Command+Option+Esc来...
  • 使用window.open()弹出的弹出窗口,刷新父窗口 非模态刷新父页面 :window.opener.location.reload() 使用window.showDialog弹出的模式窗口 模态刷新父页面 :window.dialogArguments.location.reload();   ...
  • 强制退出程序的六种方法

    千次阅读 2020-10-26 13:43:21
    这个时候我们就需要强制退出这个程序了,下面由小编为你带来在Mac OS里强制退出应用程序的六种方法 使用键盘快捷键强制退出处于活跃状态的Mac程序 快捷键:Command+Option+Shift+Esc 这样按住一两秒钟,就可以强制...
  • Java 线程同步-模拟窗口售票

    千次阅读 2018-11-03 17:23:11
    Java 线程同步-模拟窗口售票 java开发者 2018-11-02 20:52:45 Java 内容目录 实现Runnable接口 使用 同步代码块 1、实现的方式 2、继承的方式 使用 同步方法 1、实现的方式 本文例子:利用线程模拟 ...
  • 使用个并排窗口是利用当今存在的大型高分辨率显示器的好方法。 这个包提供了 Emacs 的“缺失功能”,用于创建并排布局、高效导航和管理窗口。 这个包在与跟随模式结合使用时特别有用,Emacs 提供的一个包创建了几...
  • Android 关闭应用程序的6种方法

    万次阅读 2015-06-16 14:57:52
    1.方法一killProcess结束进程 android.os.Process.killProcess(android.os.Process.myPid());android中所有的activity都在主进程中,在Androidmanifest.xml中可以设置成启动不同进程,Service不是一个单独的进程也...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 135,655
精华内容 54,262
关键字:

关闭窗口的六种方法