⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 valueobjectdatapickertag.java

📁 《j2ee开发全程实录》随书源码
💻 JAVA
字号:
package com.cownew.PIS.framework.web.ctrl;

import java.io.IOException;

import javax.servlet.jsp.JspException;
import javax.servlet.jsp.tagext.TagSupport;

import com.cownew.PIS.framework.web.helper.WebUtils;

public class ValueObjectDataPickerTag extends TagSupport
{

	private String daoIntfName;

	private String displayProperty;

	private String forComponent;

	/**
	 * DAO接口类名
	 * @param daoIntfName
	 */
	public void setDaoIntfName(String daoIntfName)
	{
		this.daoIntfName = daoIntfName;
	}

	/**
	 * 显示字段
	 * @param displayProperty
	 */
	public void setDisplayProperty(String displayProperty)
	{
		this.displayProperty = displayProperty;
	}

	/**
	 * id字段要放置在哪个控件上
	 * @param forComponent
	 */
	public void setForComponent(String forComponent)
	{
		this.forComponent = forComponent;
	}

	public int doEndTag() throws JspException
	{
		String picURL = WebUtils.getAbsoluteURL(pageContext,
				"/Ctrl/dataPicker.bmp");
		
		StringBuffer sb = new StringBuffer();
		sb.append("<INPUT id='").append(forComponent)
				.append("Display' type='text' readonly/>\n");
		sb
				.append("<IMG style='WIDTH: 28px; CURSOR: hand; HEIGHT: 19px' height='19'\n");
		sb.append("	src='" + picURL
				+ "' width='28' onclick=");
		sb.append("\"").append(getImgOnClickScript()).append("\"/>\n");

		try
		{
			pageContext.getOut().println(sb.toString());
		} catch (IOException e)
		{
			throw new JspException(e);
		}
		return EVAL_PAGE;
	}

	private String getImgOnClickScript()
	{
		StringBuffer sbPickerURL = new StringBuffer();
		sbPickerURL.append("/Ctrl/ValueObjectDataPicker.jsp?");
		sbPickerURL.append(WebOVPickerUtils.DAOINTFCLASS).append("=").append(
				daoIntfName);
		sbPickerURL.append("&");
		sbPickerURL.append(WebOVPickerUtils.DISPALYPROPERTY).append("=")
				.append(displayProperty);
		
		String pickerURL = WebUtils.getAbsoluteURL(pageContext,sbPickerURL.toString());
		
		StringBuffer sb = new StringBuffer();
		sb.append("javascript:if(!event.ctrlKey){result=window.showModalDialog('");
		sb.append(pickerURL).append("','','scroll:yes;');");
		sb.append(forComponent).append("Display.value=result[1];").append(forComponent).append(
				".value=result[0];}else{");
		sb.append(forComponent).append("Display.value='';").append(forComponent).append(
		".value='';");
		sb.append("}");
		return sb.toString();
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -