QHYun_practice-11

就参照eclipse做一个简单的主界面吧,在前面登录验证完成的基础上进入主界面,主界面大致应该有菜单栏、工具栏、主工作区、文件树、信息栏,然后还保留一个区域备用吧,以后看能扩展些什么,如果是加载地图什么的,也许可以做一个鹰眼的功能区。

菜单栏和工具栏暂时还没想好具体做点什么,不如就从文件树和主工作区开始做吧。

想来主界面、主工作区、文件树和信息窗这些,以后多半也是全局唯一的,所以先去做一个单例,以后通过单例的注册就可以在需要的时候很方便的找到对应的内容。

先去工程下,建一个QHService的模块,然后建一个SingleService的包。

首先写一个SingleInstanceKey的类,类似于一个枚举类型吧,把可能用到的单例的Key放进去,以后就可以按key值访问。将前面想到的几种可能全局唯一的实例的标识放进去。

package SingleService;
 
/**
 * <p> TODU </P>
 *
 * @author yeager
 * @Version V1.1.1.0
 * @date 2023/11/24 9:31
 */
public class SingleInstanceKey {
    public static final int ServiceManager=0;
    public static final int MainFrame=1;
    public static final int MainWorkingPanel=2;
    public static final int DocumentTreePanel=3;
    public static final int IMessagePanel=4;
}
package SingleService;
 
/**
 * <p> TODU </P>
 *
 * @author yeager
 * @Version V1.1.1.0
 * @date 2023/11/24 9:31
 */
public class SingleInstanceKey {
    public static final int ServiceManager=0;
    public static final int MainFrame=1;
    public static final int MainWorkingPanel=2;
    public static final int DocumentTreePanel=3;
    public static final int IMessagePanel=4;
}

然后写一个SingleInstance类用来存放单例,相当于字典,在生成单例是就放进来,以后要用的时候就从这里取。

package SingleService;
 
/**
 * <p> TODU </P>
 *
 * @author yeager
 * @Version V1.1.1.0
 * @date 2023/11/24 9:33
 */
public class SingleInstance {
 
    private static Object[] instanceList=new Object[100];
 
    public static void registerInstance(int key,Object o)
    {
        instanceList[key]=o;
    }
 
    public static Object getInstance(int key)
    {
        return instanceList[key];
    }
}

 

posted @ 2025-07-21 09:33  Wind_Swing_Dunn  阅读(2)  评论(0)    收藏  举报