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

📄 dropmenumaker.java

📁 这是一个轻便的j2ee的web应用框架,是一个在多个项目中运用的实际框架,采用struts,hebinate,xml等技术,有丰富的tag,role,navigation,session,dictio
💻 JAVA
字号:
/*
 * Created on 2004-8-22
 *
 */
package com.esimple.framework.web.taglib.menu;

/**
 * @author steven
 *
 */
public class DropMenuMaker {

	private static final String prefix_root = "var myMenu =[ \n";
	private static final String postfix_root = "\n];";

	private static final String prefix = "[";
	private static final String postfix = "],";

	public static String makeMenu(MenuModel model) {
		StringBuffer buffer = new StringBuffer();
		if (model.isRoot()) {
			buffer.append(prefix_root);
		}

		getMenuText(model, buffer);

		if (model.isRoot()) {
			buffer.append(postfix_root);
		}
		return buffer.toString();
	}

	private static void getMenuText(MenuModel model, StringBuffer buffer) {
		if (!model.isRoot())
			getOneMenuText(model, buffer);
		if (model.isLeaf()) {
			buffer.append(postfix);
			return;
		} else {
			for (int i = 0; i < model.getChildenSize(); i++) {
				MenuModel child = model.getChild(i);
				getMenuText(child, buffer);
			}
			if (!model.isRoot()) {
				buffer.append("\n");
				buffer.append(postfix);
			}

		}

	}

	private static void getOneMenuText(MenuModel model, StringBuffer buffer) {
		buffer.append(prefix);
		if (model.getIcon() != null) {
			buffer.append("'");
			buffer.append(model.getIcon());
			buffer.append("'");
		} else {
			buffer.append("'&nbsp;&nbsp;&nbsp;'");
		}
		buffer.append(",");

		if (model.getLabel() != null) {
			buffer.append("'");
			buffer.append(model.getLabel());
			buffer.append("'");
		} else {
			buffer.append("null");
		}
		buffer.append(",");

		if (model.getAction() != null) {
			buffer.append("'");
			buffer.append(model.getAction());
			buffer.append("'");
		} else {
			buffer.append("null");
		}
		buffer.append(",");

		if (model.getTarget() != null) {
			buffer.append("'");
			buffer.append(model.getTarget());
			buffer.append("'");
		} else {
			buffer.append("null");
		}
		buffer.append(",");


		if (model.getTips() != null) {
			buffer.append("'");
			buffer.append(model.getTips());
			buffer.append("'");
		} else {
			buffer.append("null");
		}

		if (!model.isLeaf()) {
			buffer.append(",\n");
		}

	}

	public static void main(String[] args) {
		MenuModel root = new MenuModel();
		root.setRoot(true);
		MenuModel model = new MenuModel("menu1",  "tips1");
		MenuModel model1_1 = new MenuModel("menu11", "tips11");
		MenuModel model1_1_1 = new MenuModel("icon","meu111", "action", null,"tips");
		
		MenuModel model2 = new MenuModel("menu2", "tips2");
		MenuModel model2_2 = new MenuModel("icon","meu21", "action", null,"tips");
		
		
		model1_1.addChild(model1_1_1);
		model.addChild(model1_1);
		
		model2.addChild(model2_2 );
		
		root.addChild(model);
		root.addChild(model2);
		System.out.println(makeMenu(root));

	}
}

⌨️ 快捷键说明

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