用户3521用户3521层次 | 说明 |
应用层 | 由业务页面组成,继承自 PageBase,实现具体业务逻辑。 |
页面层 | 提供页面容器、导航菜单、布局管理等功能,由 MainForm 和 PageBase 实现。 |
设计器层 | 提供运行时设计器页面(GuiStandard),支持拖拽控件、编辑属性、绑定 IO、保存布局。 |
控件层 | 包含基础控件(按钮、文本框等)和自定义控件,继承自 ControlBase。 |
核心层 | 提供属性系统、条件表达式、XML 序列化、事件总线等基础能力。 |
平台层 | 封装底层 API(IO 操作、日志、数据库等),供 UI 层调用。 |
步骤 | 说明 |
1. 环境设置 | 调用 ControlHelper.LoadEnvPaths() 加载环境变量路径;初始化基础库 JSeqCon.JSeqCon_Initial("GUI_MAINFORM");设置跨线程调用检查为 false。 |
2. 程序集解析 | 通过 AssemblyResolve 事件动态加载缺失的程序集,搜索路径包括 J:\JKBase\Gui、J:\JKBase\Library、J:\JKBase\Driver 及其子目录。 |
3. 异常处理 | 捕获未处理异常(UnhandledException),记录日志并尝试重启界面。 |
4. 启动模式判断 | 根据命令行参数决定是否自动启动(IsAutoStartup)。 |
5. 主窗体创建 | 创建 MainForm 实例,调用 ReadConfigFile 解析导航配置文件,添加消息过滤器,运行消息循环。 |