`
xy0792
  • 浏览: 90705 次
  • 性别: Icon_minigender_1
  • 来自: 宁波
社区版块
存档分类
最新评论

从一个UI中调用另一个UI

UI 
阅读更多

UIContext uiContext = new UIContext(this); //uiContext可以将参数传给下个UI

uiContext.put("id", id); //uiContext是个Map

IUIWindow uiWindow = null;
        uiWindow = UIFactory.createUIFactory(UIFactoryName.MODEL).create(PrepayToPlaceUI.class.getName(), uiContext, null, OprtState.EDIT);
//PrepayToPlaceUI.class.getName() 要调出的UI

PrepayToPlaceUI window = (PrepayToPlaceUI) uiWindow.getUIObject(); //要调出的UI的类

window.pkDate.setValue(new Date()); //给UI上的空间赋值

uiWindow.show();

 

 

************************************************************************

以下是反编译出来的源码,ListUI编辑/查看EditUI的事件,从ListUI调出EditUI

 

 

 

public void actionView_actionPerformed(ActionEvent e)
        throws Exception
    {
        checkSelected();
        checkObjectExists();
        UIContext uiContext = new UIContext(this);
        uiContext.put("ID", getSelectedKeyValue());
        selectKeyValue = getSelectedKeyValue();
        prepareUIContext(uiContext, e);
        IUIWindow uiWindow = null;
        if(SwingUtilities.getWindowAncestor(this) != null && (SwingUtilities.getWindowAncestor(this) instanceof JDialog))
            uiWindow = UIFactory.createUIFactory(UIFactoryName.MODEL).create(getEditUIName(), uiContext, null, OprtState.VIEW);
        else
            uiWindow = UIFactory.createUIFactory(getEditUIModal()).create(getEditUIName(), uiContext, null, OprtState.VIEW);
        uiWindow.show();
        actionEvent = e;
        if(isDoRefresh(uiWindow))
        {
            isModify = true;
            setLocatePre(false);
            refresh(e);
            setLocatePre(true);
        }
    }

    public void actionEdit_actionPerformed(ActionEvent e)
        throws Exception
    {
        IUIWindow uiWindow = showEditUI(e);
        uiWindow.show();
        actionEvent = e;
        if(isDoRefresh(uiWindow))
        {
            setLocatePre(false);
            refresh(e);
            setPreSelecteRow();
            setLocatePre(true);
        }
    }

    private IUIWindow showEditUI(ActionEvent e)
        throws Exception
    {
        checkSelected();
        checkObjectExists();
        UIContext uiContext = new UIContext(this);
        uiContext.put("ID", getSelectedKeyValue());
        selectKeyValue = getSelectedKeyValue();
        prepareUIContext(uiContext, e);
        IUIWindow uiWindow = null;
        if(SwingUtilities.getWindowAncestor(this) != null && (SwingUtilities.getWindowAncestor(this) instanceof JDialog))
            uiWindow = UIFactory.createUIFactory(UIFactoryName.MODEL).create(getEditUIName(), uiContext, null, OprtState.EDIT);
        else
            uiWindow = UIFactory.createUIFactory(getEditUIModal()).create(getEditUIName(), uiContext, null, OprtState.EDIT);
        return uiWindow;
    }

分享到:
评论

相关推荐

    jquery插件jquery-ui-1.8.2.custom.min.js

    此外,"jquery.cookie.js"是另一个jQuery插件,用于处理浏览器的Cookie。它允许开发者方便地读取、写入和删除Cookie,从而实现用户数据的本地存储,这对于实现记住密码、页面状态保存等功能非常有用。 在实际应用中...

    PySide UI Creation in Maya- Video Two

    这可能涉及到`mel`(Maya Embedded Language)和Python之间的交互,以及如何在UI中调用这些命令。 视频可能会展示如何通过`MayaWindow`模块获取当前活跃的Maya窗口,以及如何利用`QtGui`和`QtWidgets`模块中的类来...

    Activity如何改变Fragment的UI

    定义一个接口,Fragment实现该接口并设置监听器,然后在Activity中调用接口方法来传递数据。 ```java // 在Fragment中定义接口 public interface OnDataChangeListener { void onDataChanged(String newData); ...

    element-ui table组件如何使用render属性的实现

    主要介绍了element-ui table组件如何使用render属性的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

    jquery-ui-1.12.1.custom.zip下载

    2. **初始化控件**:在 JavaScript 中调用对应的 jQuery UI 方法来初始化控件,例如,创建一个日期选择器: ```javascript $(function() { $("#datepicker").datepicker(); }); ``` 3. **自定义配置**:每个...

    vc++中调用谷歌地图

    使用谷歌地图API的`<script>`标签,如`<script src="https://maps.googleapis.com/maps/api/js?key=YOUR_API_KEY"></script>`,并定义一个div元素作为地图容器。 3. **加载HTML**:在C++代码中,使用Web浏览器控件...

    telerik.ui.for.aspnet.core.2019.1.220.commercial_Downloadly.ir.msi.rar

    【描述】中的内容与标题相同,暗示这是关于Telerik UI for ASP.NET Core的一个软件下载链接或已下载的文件,可能是从Downloadly.ir网站获取的。Downloadly.ir是一个提供下载服务的网站,用户可以在此找到各种软件的...

    实现在asp.net中调用打印功能

    在 ASP.NET 中调用打印功能是一个常见的需求,特别是在报表生成和文档打印等场景中。下面我们将详细介绍如何在 ASP.NET 中实现打印功能。 标题解释 标题 "实现在 asp.net 中调用打印功能" 表明,我们将要讨论如何在...

    jquery -ui-1.2.22.comstom.zip

    jQuery UI 是一个强大的开源库,它是基于 ...总的来说,“jquery-ui-1.2.22.custom.zip”为开发者提供了一个便捷的方式来构建具有高级交互功能的Web应用程序,通过合理的配置和使用,可以显著提升用户体验和开发效率。

    免费Android创建UI:用javascript与Activity进行交互

    通过具体的代码示例,展示了如何在Android应用中设置WebView,如何使用addJavascriptInterface方法将Android对象暴露给JavaScript,以及如何在JavaScript中调用这些对象的方法。 适用人群 本文适用于以下人群: ...

    ASP.NET中调用存储过程方法

    2. **在ASP.NET中调用存储过程的基本步骤** - 创建存储过程:在SQL Server或其他关系型数据库中编写并创建存储过程。 - 连接数据库:在ASP.NET中,使用ADO.NET(如SqlConnection对象)建立与数据库的连接。 - ...

    Angel工作室LigerUi框架留言板源码 AngelMessageBoards.rar

    3、如果在vs中调式请选择另一个文件夹,本程序使用access和mssql数据兼容的模式 如果切换数据库请直接修改配置文件web.config 4、本留言板自带access数据所有省去了,安装mssql的麻烦。而且进过程序兼容性的修改...

    swift-Automator用于macOS的UI测试自动程序

    Swift-Automator是macOS平台上的一个UI自动化测试工具,它允许开发者和用户通过Swift语言编写脚本来模拟用户界面操作,实现对应用程序的自动化测试。这个工具极大地提升了测试效率,确保了软件的质量,并且简化了...

    swift-在Objective-C和Swift中的SendBirdiOS示例UI

    SendBird提供了API来进行这些操作,你可以在Swift中调用这些API,并处理返回的数据来更新UI。 3. **创建聊天界面**:SendBird的SDK包含预定义的UI组件,如`SBDBaseChatViewController`,可以直接使用或自定义以适应...

    在oracle dev 10g中调用报表的方法

    ### 在Oracle Dev 10g中调用报表的方法 #### 安装与配置Oracle Dev 10g 在详细介绍如何在Oracle Dev 10g中设置和调用报表之前,我们首先来了解一下Oracle Dev 10g的安装与基本配置。 1. **安装Oracle Dev 10g** ...

    SwissArmyKnife-android免root兼容所有版本ui调试工具.zip

    使用方式compile 'com.wanjian:sak:0.0.3'android 4.0及以上用户直接在application的onCreate中调用 com.wanjian.sak.LayoutManager.init(Application context) ,其他版本可以在activity的onResume中调用...

    python pyqt6设置代理+执行cmd命令

    在Python编程中,PyQt6是一个非常强大的图形用户界面(GUI)工具包,它...在实际开发中,你可以根据需要在`proxy.py`中实现设置代理和执行CMD命令的逻辑,然后在`main.py`中调用这些函数,结合UI交互,完成整个功能。

    Fragment和Activity交互(Handler方式)

    - 为了在Fragment和Activity之间发送消息,可以创建一个公共的接口,让Fragment和Activity都实现该接口,然后在Handler中调用接口方法来传递消息。 3. **处理消息**: - 在Activity的handleMessage()方法中,根据...

    qt实现控制摄像头拍照保存

    Qt是一个功能强大的跨平台开发框架,广泛应用于GUI应用的构建,它提供了丰富的API来处理多媒体,包括访问和操作摄像头。 首先,我们需要导入必要的Qt模块。在Qt中,多媒体功能主要由`QMultimedia`模块提供,而`...

Global site tag (gtag.js) - Google Analytics