swt table 使用小结.docxVIP

  • 4
  • 0
  • 约4.07千字
  • 约 5页
  • 2017-07-09 发布于河南
  • 举报
swt table 使用小结

swt table 使用小结分类:?Eclipse2011-03-06 15:16?328人阅读?评论(1)?收藏?举报SWT Table(Table是无法编辑的,若要创建出可编辑的table,需要自行使用Composite与GirdLayout来开发)1.创建简单的Table创建Table就是创建出Table类的对象,传入parent容器与样式属性。对该对象加入TableColumn这个类的对象来表示想要出现在table中的字段。Table t=new Table(s,SWT.BORDER);创建table字段主要有三个步骤:1)对每个字段创建出TableColumn的对象。2)使用SetText()对每个字段设置表头文字。3)使用SetWidth()来设定每个字段的宽度。TableColumn tc1=new TableColumn(t,SWT.CENTER);TableColumn tc2=new TableColumn(t,SWT.CENTER);TableColumn tc3=new TableColumn(t,SWT.CENTER);tc1.setText(First Name);tc2.setText(Last Name);tc3.setText(Address);tc1.setWidth(75);tc2.setWidth(70);tc3.setWidth(80);t.setHeaderVisible(true);TableColumn支持三种样式:SWT.CENTER、SWT.RIGHT、SWT.LEFT,这些样式决定了文字在每个字段中显示方式。创建完Table的表头后,需要通过TableItem类来加入数据到Table中。TableItem item1=new TableItem(t,SWT.NONE);item1.setText(new String[]{Tim,Hatton,Kentucky});TableItem item2=new TableItem(t,SWT.NONE);item2.setText(new String[]{Caitlyn,Warner,Ohio});TableItem item3=new TableItem(t,SWT.NONE);item3.setText(new String[]{Reese,Miller,Ohio});每个TableItem对象代表了table中的一行且行中的每一栏都有一个值。数据是通过String数组加入TableItem中的。2.字段表头与网格线的显示字段表头的显示:t.setHeaderVisible(true);网格线的显示:?? t.setLinesVisible(true);3.强调选取行在行中的某一栏被选取时,通过将跨字段的整行强调来给用户以整行被选取的视觉指示,可以使用SWT.FULL_SELECTION这个样式即可。4.允许选取多行Table默认情况下只被允许选取一行。可以设定SWT.MULTI样式来允许选取多行。在选取时必须通过按住ctrl键来进行多行选取。5.程序化得选取项目若table的项目是可以被选取的,那就一定有方法来判断哪个项目被选取的,或者可以在没有用户介入的情况下让某个项目被选取。Table通过getSelection()这个方法返回当前被选取的TableItem(一行数据)对象的数组。TableItem []ti=t.getSelection();若Table是多重选取的,可以通过getSelectionIndices()返回int值的数组来以零基准索引指出哪些TableItem被选取。int[] selected=t.getSelectionIndices();若Table为单选的,可以通过getSelectionIndex()返回当前被选取项目的索引。int selected=t.getSelectionIndex();6.Check样式可以通过SWT.CHECK样式在table项目前加上一个checkbox,可以通过setChecked()方法来让项目成为checked,通过getChecked()方法判断项目的状态。item3.setChecked(true);boolean checked=item3.getChecked();7.改变背景颜色通过使用setBackground()来指定个别TableItem的背景颜色:item2.setBackground(new Color(d,127,178,127));8.创建可以搜素和替换的Table虽然Table这个类内置了通过键入cell中的文字的第一个字符来寻找项目的功能,但这还不足以提供完整的Table搜索能力。还可以通过getText()和setText()对

文档评论(0)

1亿VIP精品文档

相关文档