listboxfigure.java

来自「基于eclipse的工具开发代码」· Java 代码 · 共 48 行

JAVA
48
字号
package com.cownew.uidesigner.components.listbox;

import org.eclipse.draw2d.ColorConstants;
import org.eclipse.draw2d.Figure;
import org.eclipse.draw2d.Graphics;
import org.eclipse.draw2d.Label;
import org.eclipse.draw2d.SchemeBorder;
import org.eclipse.swt.graphics.Color;


public class ListBoxFigure extends Figure
{
	private String items;
	
	private Label innerList = null;
	
	protected static final SchemeBorder.Scheme SCHEME_FRAME = new SchemeBorder.Scheme(
			new Color[] { ColorConstants.lightGreen, ColorConstants.lightGreen,
					ColorConstants.lightGreen }, new Color[] {
					ColorConstants.lightGreen, ColorConstants.lightGreen,
					ColorConstants.lightGreen });
	
	public ListBoxFigure()
	{
		super();
		setBorder(new SchemeBorder(SCHEME_FRAME));
		
		innerList = new Label();
		innerList.setLabelAlignment(Label.LEFT);
		innerList.setTextAlignment(Label.TOP);
		add(innerList);
	}

	public void setItems(String items)
	{
		this.items = items;
		this.repaint();
	}
	
	protected void paintFigure(Graphics graphics)
	{
	    super.paintFigure(graphics);	    
	    innerList.setBounds(getBounds());	
		//Label可以放置带换行符的多行文字,所以可以自动实现多行效果
		innerList.setText(items);		
	}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?