• 第十三章 第五节 关于WindowManager的一些话


    第五节 关于WindowManager的一些话

    JFace包含一个叫WindowManager的类[2],它并不会控制窗口的外观,也不会管理用户和窗口的交互,而是将窗口编组,这样你就可以迭代的访问它们或者将它们整组的关闭。WindowManager的实例拥有窗口,也可以同时可选的拥有其他WindowManager的实例。WindowManager提供了两种构造函数,在表13-1中列出:

    表13-1:WindowManager的构造函数

    构造函数

    描述

    WindowManager()

    构造一个根窗口管理器(也就是没有父亲的窗口管理器)

    WindowManager(WindowManager parent)

    构造一个窗口管理器,作为一个父亲窗口管理器的的孩子

    绝大多数WindowManager的方法只对它自己产生效果,除了close()方法会一连串影响到它所有的孩子WindowManger。表13-2列出了WindowManager的方法。

    表13-2:WindowManager的方法

    方法

    描述

    void add(Window window)

    将window表示窗口添加到这个WindowManager中

    boolean close()

    关闭属于这个WindowManager的所有窗口,以及属于它所有孩子WindowManager的窗口。当任何一个窗口关闭失败时,停止关闭并且返回false,否则返回true

    int getWindowCount()

    返回属于这个WindowManager的窗口的数目

    Window[] getWindows()

    返回一个数组,其元素是属于这个WindowManager的所有的窗口

    void remove(Window window)

    将window表示的窗口从这个WindowManager中移去

    使用WindowManager时,构造一个实例,添加你的窗口,然后适当的调用它的方法。下面的代码创建了一个WindowManager,向里面加入了三个窗口,然后把它们全都关闭,如果关闭失败的话则打印一个诊断信息:

    WindowManager wm = new WindowManager();
    wm.add(windowOne);
    wm.add(windowTwo);
    if (!wm.close())
      System.err.println("Windows failed to close");


    [2] 译注:原文是JFace includes a class called WindowManager, which isn't a drop-in for IceWM, sawfish, or Enlightenment.

  • 相关阅读:
    不记住密码
    在Docker中进行Redis主从配置
    Spring Boot系列(8)——RabbitMQ确认、退回模式及死信队列
    RabbitMQ基础
    CentOS只有lo和ens33网卡的解决方案
    Spring Boot系列(7)——自定义异常反馈
    Spring Boot系列(6)——Configurer和Customizer
    以form表单重用方式进行数据列表行删除
    Spring Boot系列(5)——Restful CURD注意事项
    Spring Boot系列(4)——实现国际化
  • 原文地址:https://www.cnblogs.com/ols/p/2173399.html
Copyright © 2020-2023  润新知