@Override public void onLoad() throws Exception { // TODO Auto-generated method stub super.onLoad(); //獲取dep供應商F7 //=========================================================== KDBizPromptBox prmtsupplier = (KDBizPromptBox) this.findComponent("contsupplier","prmtsupplier"); if(prmtsupplier!=null){ //添加 供應商 改變監聽 prmtsupplier.addDataChangeListener(new DataChangeListener(){ @Override public void dataChanged(DataChangeEvent e){ //do something } }); } } /** * * 獲取dep動態擴展控件 * uiTxtNumber 爲UI頁面 一個文本控件 * depLabelName 爲添加控件上級Lable的名稱 * depContainerName 爲要獲取的擴展控件名稱 * 返回一個控件,類型須要強轉或null * * @param uiTxtNumber * @param depLabelName * @param depContainerName * @return */ public Container findComponent(KDTextField uiTxtNumber,String depLabelName,String depContainerName) { if(uiTxtNumber==null||depLabelName==null||depContainerName==null){ return null; } Container basePanel = uiTxtNumber.getParent().getParent(); //獲取最高層面板循環獲取下級 控件元素 for (int j = 0; j < basePanel.getComponentCount(); j++) { Component comp2 = basePanel.getComponent(j); //找到名稱爲 if (depLabelName.equals(comp2.getName())) { Container con = (Container) comp2; //label子空間有三個,第三個爲控件 Container resultCon = (Container)con.getComponent(2); if(depContainerName.equals(resultCon.getName())){ return resultCon; } } } return null; } /** * * 獲取dep動態擴展控件 * depContainerName爲要獲取的擴展控件名稱 * 返回一個控件,類型須要強轉或null * * @param depContainerName * @return */ public Container findComponent(String depLabelName,String depContainerName) { return this.findComponent(this.kDTextBankStr,depLabelName,depContainerName); }
粘過去直接能夠用,不解釋,看註釋就能懂。java