popup dialog 案例

本文详细探讨了Popup Dialog在实际应用中的使用案例,包括如何创建、显示和自定义Popup Dialog,以及在不同场景下的最佳实践,帮助开发者更好地理解和掌握这一UI组件。
摘要由CSDN通过智能技术生成
      <af:popup id="p1">       
      <af:dialog id="d2" title="确定xx这些xx吗" type="none">  
       <af:outputText value="#{pageFlowScope.ContractChangeTerminateAuto.selectedCount}" id="ot1"/>      
     <f:facet name="buttonBar">  
        <af:panelGroupLayout layout="horizontal" id="pgl1">
                <af:commandButton text="确定" id="cb3"  actionListener="#{pageFlowScope.xxxxxxx.TerminateCreate}"/>
                 <af:commandButton text="取消" id="cb4"/>
              </af:panelGroupLayout>    
     </f:facet>  
  
  </af:dialog>  
            
          </af:popup>

<af:commandButton text="commandButton 1" id="cb2">
              <af:showPopupBehavior popupId="p1"/>
            </af:commandButton>



package com.contract.app.view.beans;

import com.contract.app.model.am.HomeAMImpl;

import com.contract.app.model.vo.ContractChangeTerminateAutoVOImpl;

import com.contract.app.view.utils.ADFUtils;

import javax.faces.event.ActionEvent;

import oracle.adf.model.BindingContext;
import oracle.adf.model.binding.DCBindingContainer;
import oracle.adf.model.binding.DCIteratorBinding;


import oracle.adf.view.rich.component.rich.data.RichTable;
import oracle.adf.view.rich.event.DialogEvent;
import oracle.adf.view.rich.event.PopupFetchEvent;

import oracle.binding.BindingContainer;


import oracle.jbo.Row;


public class ContractChangeTerminateAuto {

    private int CONHeaderId;
    private String endStatus = "已终止";
    private int selectedCount;
    HomeAMImpl am = (HomeAMImpl)ADFUtils.getDCBindingContainer().getDataControl().getApplicationModule();



    public ContractChangeTerminateAuto() {
    }


    public void setSelectedCount(int selectedCount) {
        this.selectedCount = selectedCount;
    }

    public int getSelectedCount() {
        return selectedCount;
    }


 

    public void dialogShow(PopupFetchEvent popupFetchEvent) {
        // Add event code here...
        //HomeAMImpl am = (HomeAMImpl)ADFUtils.getDCBindingContainer().getDataControl().getApplicationModule();
        
        DCBindingContainer bindings = (DCBindingContainer)getBindings();
           DCIteratorBinding iter = bindings.findIteratorBinding("ContractChangeTerminateRegVO1Iterator");
        DCIteratorBinding iter2 = bindings.findIteratorBinding("HtConstractHeadersTView1Iterator");
        
          int itern = (int)iter.getViewObject().getEstimatedRowCount();
           int itert = (int)iter2.getViewObject().getEstimatedRowCount();
        System.out.println(itert);
           
          ContractChangeTerminateAutoVOImpl ContractChangeTerminateAuto1 = (ContractChangeTerminateAutoVOImpl)am.getContractChangeTerminateAutoVO1();                
           selectedCount=0;
           
               for (int i = 0; i < itern; i++) {
                 Row row1 = iter.getRowAtRangeIndex(i);
              
                   if (row1.getAttribute("isChecked") == "Y") {                
                     selectedCount++;
                    
                       CONHeaderId= Integer.parseInt(row1.getAttribute("ConstractHeaderId").toString());
                                     
                      for (int j = 0; j < itert; j++) 
                      {                          
                      Row row2 = iter2.getRowAtRangeIndex(j);
                      System.out.println("---row2.getAttribute(0)-----"+row2.getAttribute(0));
            System.out.println("---row2.getAttribute(ConstractHeaderId)-----"+row2.getAttribute("ConstractHeaderId"));    
                   if (Integer.parseInt(row2.getAttribute("ConstractHeaderId").toString()) == CONHeaderId) {
                 row2.setAttribute("ConstractStatus", endStatus);
                System.out.println(row2.getAttribute("ConstractHeaderId").toString());              
                }
        }
                                         
                Row newRow =ContractChangeTerminateAuto1.createRow();
                  newRow.setNewRowState(oracle.jbo.Row.STATUS_NEW); 
                  newRow.setAttribute("RequestId", CONHeaderId+"ZZ"+01); 
                   newRow.setAttribute("ConstractHeaderId", CONHeaderId);
                  ContractChangeTerminateAuto1.insertRow(newRow);
                 
                }
               }
    }
    
    
    public BindingContainer getBindings() {
    return BindingContext.getCurrent().getCurrentBindingsEntry();
    }





    public void CommitTerminateContract(ActionEvent actionEvent) {
        // Add event code here...
        am.getDBTransaction().commit();
        DCBindingContainer bindings = (DCBindingContainer)getBindings();
           DCIteratorBinding iter = bindings.findIteratorBinding("ContractChangeTerminateRegVO1Iterator");
        
          
       iter.getViewObject().executeQuery();  
        System.out.println(selectedCount);
    }
}


uni-popup-dialog是一种在UNI-APP开发中常用的弹窗组件,它可以在页面中弹出一个对话框供用户进行操作。而取消事件是指当用户点击对话框中的取消按钮时,触发的事件。 取消事件通常用于在用户取消操作时执行一些逻辑,比如关闭弹窗、重置表单等。在使用uni-popup-dialog组件时,可以通过监听取消事件来处理用户取消操作。 具体实现取消事件的方法如下: 1. 在uni-popup-dialog组件中,可以通过设置bind:cancel来绑定取消事件的回调函数,例如:bind:cancel="onCancel"。 2. 在对应的页面或组件中,定义onCancel方法,该方法会在用户点击取消按钮时被触发。 3. 在onCancel方法中编写具体的取消逻辑,比如关闭弹窗、重置表单等。 示例代码如下: 在组件中设置uni-popup-dialog组件的取消事件回调函数: ``` <uni-popup-dialog bind:cancel="onCancel"></uni-popup-dialog> ``` 在对应的页面或组件中定义onCancel方法,并编写取消逻辑: ``` methods: { onCancel: function() { // 关闭弹窗逻辑 // uni.hidePopupDialog(); // 重置表单逻辑 // this.form = {}; } } ``` 上述代码中,当用户点击uni-popup-dialog组件中的取消按钮时,会触发onCancel方法。在该方法中,可以根据具体需求编写取消事件的相关逻辑。 总结:通过设置uni-popup-dialog组件的取消事件回调函数,并在对应的方法中编写取消逻辑,可以实现uni-popup-dialog取消事件的处理。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值