列表框样式
样式常量 |
描述 |
SWT.SINGLE |
只能选中一个选项 |
SWT.MULTI |
可同时选中多个选项 |
SWT.V_SCROLL |
带有水平滚动体的列表框 |
SWT.V_SCROLL |
带有垂直滚动体的列表框 |
常用方法
- 末尾添加选项 add(String string)
- 指定位置添加选项 add(String,int),setItem(int ,String)
- 添加字符串数组选项 setItems(String[])
- 删除指定索引选项 remove(int)
- 删除多个索引的选项 remove(int[])
- 删除开始和结束之间的选项 remove(int start,int end)
- 删除指定字符串的选项 remove(String)
- 删除列表中所有的选项 removeAll()
- 获取指定索引选项的值 getItem(int)
- 获取选项的总数 getItemCount()
- 获取所有的选项值 getItems()
- 获取第一个选项的索引值 getTopIndex()
- 查找是否存在指定的选项返回索引值 indexOf(String)
- 查找指定索引后是否存在指定的选项返回索引值 indexOf(String,int)
- 获取当前选中的所有选项 getSelection()
- 获取当前选中选项的索引值 getSelectIndex()
- 获取当前选中的选项索引值 数组 getSelectionIndices()
- 判断某个索引值的选项是否被选中 isSelected(int index)
- 设置指定索引值为选中状态 select(int index) setSelection(int index)
- 设置指定索引值数组的选项为选中状态 select(int []) setSelection(int[])
- 设置开始索引到结束索引的选项为选中状态 select(int start,int end) setSelection(int start ,int end)
- 全选 selectAll()
- 设置指定字符串的数组为选中状态 setSelection(String[])
- 显示选中 showSelection()
- 反选指定索引的选项 deselect(int index)
- 反选指定索引数组的选项 deselect(int [])
- 反选开始到结束的选项 deselect(int start,int end)
- 全部反选 deselectAll()
测试
```java
public static void main(String[] args) {
Display display = Display.getDefault();
Shell shell=new Shell(SWT.MIN|SWT.CLOSE);
shell.setText("测试");
shell.setSize(200, 200);
shell.setLayout(new FillLayout());
List list = new List(shell,SWT.SINGLE|SWT.V_SCROLL);
list.add("111");
list.add("222");
list.add("333");
list.add("444");
list.add("555");
list.add("666");
list.add("777");
list.add("888");
list.add("999");
list.add("101010");
list.add("111111");
list.add("121212");
Text text = new Text(shell,SWT.SINGLE);
list.addSelectionListener(new SelectionAdapter() {
@Override
public void widgetSelected(SelectionEvent e) {
super.widgetSelected(e);
String[] arr = list.getSelection();
text.setText("选中 " + arr[0] );
}
});
shell.open();
while (!shell.isDisposed()) {
if (!display.readAndDispatch()) {
display.sleep();
}
}
}
效果图