Apache Pivot教程 -- ListViews

    科技2022-07-13  162

    Apache Pivot教程 – ListViews

    ListView是列表,和ListButton不同,它不是下拉型的,而是直接全部显示 一个标准的ListVew应该如下图所示 ListView的信息应该保存在List里,设置信息的方法是setListData

    package list_view; import org.apache.pivot.wtk.*; import org.apache.pivot.wtk.ListView.SelectMode; import org.apache.pivot.collections.*; public class list_view implements Application { private Window window=null; public static void main(String [] args) { try { DesktopApplicationContext.main(list_view.class, args); } catch(Throwable err) { } } @Override public void startup(Display display, Map<String, String>properties) { window=new Window(); BoxPane panel=new BoxPane(); ListView list_view1=new ListView(); List<String>list_data=new ArrayList<String>(); //ListView信息 list_data.add("hello"); //添加列 list_data.add("hi"); //添加列 list_data.add("hello hello hello"); //添加列 list_data.add("ListView"); //添加列 list_view1.setListData(list_data); //设置列表信息 panel.add(list_view1); panel.getStyles().put("padding", 10); window.setContent(panel); window.setTitle("ListViews"); window.setMaximized(true); window.open(display); } @Override public boolean shutdown(boolean optional) { if(window!=null) { window.close(); } return false; } @Override public void suspend() { } @Override public void resume() { } }

    此时已经有了一个最基础的列表,但是它是单选的,一次只能选择一项,那和ListButton就没有什么意义了 所以这里要有一个选项,将它变成多选setSelectMode

    list_view1.setSelectMode(SelectMode.MULTI); //设置为多选

    将这行代码加进去,就可以多选了 ListView的基础监听函数是getListViewSelectionListeners()

    list_view1.getListViewSelectionListeners().add(new ListViewSelectionListener() { @Override public void selectedRangeAdded(ListView listview, int rangeStart, int rangeEnd) { System.out.println(rangeStart); System.out.println(rangeEnd); } @Override public void selectedItemChanged(ListView listview, Object arg1) { System.out.println(arg1); } @Override public void selectedRangeRemoved(ListView listview, int rangeStart, int rangeEnd) { System.out.println(rangeStart); System.out.println(rangeEnd); } @Override public void selectedRangesChanged(ListView listview, Sequence<Span> list) { } });

    Processed: 0.010, SQL: 8