【深入浅出ADF】<af:selectOneChoice>单选下拉列表

  1. 主要内容:

    方法1:拖拽VO生成
    方法2:基于LOV生成
    方法3:从组件面板中拖拽生成
    方法4:基于变量生成
    使用建议


    1.功能简介

<af:selectOneChoice>是单选下拉列表组件,它可以产生一个带有备选条目的下拉选单供用户选择要输入的值。

该组件用于备选条目数量较小时,如果备选条目较多则使用<af:inputComboboxListOfValues>代替。

<af: selectOneChoice>不支持从键盘直接输入文本,如果想要根据用户输入内容进行实时提示请参考<af:autoSuggestBehavior>

出于安全考虑"disabled", "immediate", "readOnly", "required", "requiredMessageDetail", "value"属性不能被客户端设置

  1. 效果预览

默认效果

mode = compact

unselectedLabel = "默认"

 

 

  1. 使用方法

    1. 方法1:拖拽VO生成

 

运行项目,效果如图:

  1. 方法2:基于LOV生成

    1. 前置条件:新建LOV

保存全部,刷新DataControls,LOV即建立完毕

  1. 建立基于Form的selectOneChoice:

  1. 建立基于Table的selectOneChoice:

  1. 方法3:从组件面板中拖拽生成

打开JSF页面,在组件面板中找到SelectOneChoice

将其拖拽到界面, 设置如下

Finish

  1. 方法4:基于变量生成

在manageBean的位置新建SelectOneChoice2.java

现在界面上拖拽生成一个Button,双击绑定到manageBean

编写manageBean代码,如下:

 package com.jl.yyt.bean.components.input;

 

import java.util.ArrayList;

import java.util.List;

 

import javax.faces.model.SelectItem;

 

public class InputType {

public List<SelectItem> sis = new ArrayList<SelectItem>();

 

public InputType() {

 

}

 

public void setSis(List<SelectItem> sis) {

this.sis = sis;

}

 

public List<SelectItem> getSis() {

return sis;

}

 

public String cb1_action() {

SelectItem si = new SelectItem();

si.setLabel("a");

si.setValue("1");

sis.add(si);

SelectItem si2 = new SelectItem();

si2.setLabel("b");

si2.setValue("2");

sis.add(si2);

return null;

}

}

   

 

拖拽SelectOneChoice组件到界面

Next--Finish

运行页面

点击commandButton 1后,selectOneChoice的值被填充

 

 

  1. 使用建议

方法1:将VO直接生成为SelectOneChoice,用于单独显示的情况

方法2:用于在Form/Table中添加SelectOneChoice

方法3:下拉选单的内容,可固定在界面上

方法4:下拉选单的内容从manageBean中读取,但需要点击一个按钮后才能取出数据

 

 

Author:牟宏迪 muhongdi@gmail.com

Create Date:2013年10月10日

可以使用Python中的pandas库来将XML数据转化为Excel格式,以下是示例代码: ```python import pandas as pd from xml.etree import ElementTree # 读取XML数据 xml_data = '''<?xml version="1.0" encoding="UTF-8"?> <list> <item> <userId>3f2bc360-adc1-4adf-bbd9-092939603af8</userId> <eid>xuyang</eid> <displayName>yang xu</displayName> <type>registered</type> </item> <item> <userId>5d7713fd-8133-40a8-94ad-3a145ed44df8</userId> <eid>yisirui</eid> <displayName>sirui yi</displayName> <type>registered</type> </item> <item> <userId>5dcaf2c0-fb7c-47fe-99bc-df21ede9011b</userId> <eid>xiaosun</eid> <displayName>xuyang sun</displayName> <type>registered</type> </item> <item> <userId>7ea060ff-d6e4-4552-9682-6483eb692a8f</userId> <eid>alex</eid> <displayName>alex Yu</displayName> <type>registered</type> </item> <item> <userId>e190e122-96ef-4b43-9b9e-11a08400c87f</userId> <eid>wanglinkai</eid> <displayName>cui xiai</displayName> <type>registered</type> </item> <item> <userId>e3d6d07e-7a34-47c0-969f-9401ddeab675</userId> <eid>cuikairui</eid> <displayName>kairui cui</displayName> <type>registered</type> </item> <item> <userId>f304a0e1-e0a9-4518-9099-4ef5c2cdb22f</userId> <eid>xuchenxi</eid> <displayName>chenxi xu</displayName> <type>registered</type> </item> </list>''' root = ElementTree.fromstring(xml_data) # 将XML数据转化为DataFrame data = [] for item in root.findall('item'): userId = item.find('userId').text eid = item.find('eid').text displayName = item.find('displayName').text type_ = item.find('type').text data.append([userId, eid, displayName, type_]) df = pd.DataFrame(data, columns=['userId', 'eid', 'displayName', 'type']) # 将DataFrame保存为Excel文件 df.to_excel('data.xlsx', index=False) ``` 运行该代码后,会在当前目录下生成一个名为"data.xlsx"的Excel文件,其中包含了XML数据中的各个字段。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值