本章包括三部分:
一、标签(Label)组件构造方法
二、标签(Label)组件常用样式
三、标签(Label)组件示例
本章示例运行效果:
一、标签(Label)组件构造方法
标签(Label类)组件是SWT中最简单的组件。Label类的构造方法和Button类相似,参数的含义与相同,格式如下:
Label(Composite parent,int style)
二、标签(Label)组件常用样式
SWT.CENTER:文字居中。
SWT.RIGHT:文字靠右。
SWT.LEFT:文字靠左。
SWT.NONE:默认式样。
SWT.WRAP:自动换行。
SWT.BORDER:深陷型。
SWT.SEPARATOR:分栏符,默认为竖线分栏。
SWT.HORIZONTAL:横线分栏符。
三、标签(Label)组件示例
package com.bianyf.frame.swt.demo;
import org.eclipse.swt.graphics.Font;
import org.eclipse.swt.widgets.*;
import org.eclipse.swt.*;
public class LabelTest {
public static void main(String[] args) {
Display display=new Display();//创建一个display对象。
Shell shell=new Shell(display);//shell是程序的主窗体
//shell.setLayout(null); //设置shell的布局方式
shell.setText("标签示例"); //设置主窗体的标题
Label lb1=new Label(shell,SWT.BORDER|SWT.RIGHT);//深陷型、文字右对齐
lb1.setBounds(10,10,70,30);
lb1.setText("标签1");
lb1.setFont(new Font(display,"黑体",14,SWT.BOLD));//设置文字的字体字号
lb1.setForeground(Display.getCurrent().getSystemColor(SWT.COLOR_BLUE));
Label lb2=new Label(shell,SWT.CENTER);//文字居中的标签
lb2.setBounds(90,10,70,30);
lb2.setText("标签2");
lb2.setFont(new Font(display,"宋体",14,SWT.NORMAL));//设置文字的字体字号
Label lb3=new Label(shell,SWT.SEPARATOR|SWT.BORDER);//竖直分栏符
lb3.setBounds(10,50,70,30);
Label lb4=new Label(shell,SWT.SEPARATOR|SWT.HORIZONTAL|SWT.BORDER);//水平分栏符
lb4.setBounds(90,50,70,30);
shell.pack(); //自动调整主窗体的大小
shell.open(); //打开主窗体
while(!shell.isDisposed()){ //如果主窗体没有关闭则一直循环
if(!display.readAndDispatch()){ //如果display不忙
display.sleep(); //休眠
}
}
display.dispose(); //销毁display
}
}
原文链接:http://blog.sina.com.cn/s/blog_aa757f440101apt2.html
SWT组件之Table浅析
研究了几天Table、TableViewer和数据库的东西,现整理table的一些基础知识如下。
首先明确基本概念:Table为一张表;TableColumn为列;TableItem为行中的实体内容。
1)Table的几个方法:1.table.remove(int index)→删除相应的tableItem(一个行)。
//table.remove(int[] indices)→删除相应的tableItem(几个行)。
2.table.getSelectionIndices()→返回值为int,即你选中的行的index值。
3.table.getItem(int index)→返回值为TableItem,获取其中所选行的内容
4.table.getItems→返回值为TableItem[]
///////如果需要通过按钮“保存”后跟新数据库,则代码如下。
1)TableItem[] items = table.getItems();
2)保存表格中的数据到数据库中。
5.table.getItemCount()→得到表格行数
2)有关表格的修改编辑等操作在TableEditor下进行。。///TableEditor是在ControlEditor下的类
TableEditor的几个important的方法:getEditor,setEditor,getItem,setItem。
3)有关TableItem。tableItem.getText(int index)→获取这行中相应位置的数据,这里不用管位置里面数据的数据类型。
4)///////有关在表格中添加新的一行,并且可以手动输入。是否能更新至数据库,这里不讨论。////////////
个人的一些想法,还待研究。
办法1: (1)通过“添加”按钮触发后,在事件中,先添加一个新的TableItem。即:
TableItem tableItem = new TableItem(table,SWT.CENTER);
tableItem.setText(new String[]{"新信息","","",""});//个人觉得很傻逼的做法
(2)然后将这一行的属性设置成“可编辑”。
(3)修改这一行的信息,填入正确的信息。