2013-05-08 109 views
1

我想將圖像添加到最小值和最大值。如何將圖像添加到比例?

的想法,掃描儀將有+的兩個圖標和 - 和文字的 - 區域和文本在加區

例如 縮小( - 圖標)........ .....放大(+圖標)

我如何添加圖像?

final Scale scale = new Scale (fComposite, SWT.BORDER); 
    Rectangle clientArea = fComposite.getClientArea(); 
    scale.setBounds (clientArea.x, clientArea.y, 200, 64); 
    scale.setMaximum (4); 
    scale.setPageIncrement (1); 
    scale.setSelection(4); 


    scale.addListener(SWT.Selection, new Listener() { 
      public void handleEvent(Event event) { 
    ..... 
      } 
     }); 

感謝

+0

BTW:不要使用絕對大小(除非絕對必要),請改用'Layout'。請閱讀以下內容:[瞭解SWT中的佈局](http://www.eclipse.org/articles/article.php?file=Article-Understanding-Layouts/index.html)。 – Baz 2013-05-08 10:54:59

回答

1

這不是由SWT支持。

但是,你可以放置一個Label/CLabelImageScale兩側:

public static void main(String[] args) 
{ 
    Display display = new Display(); 
    final Shell shell = new Shell(display); 
    shell.setLayout(new GridLayout(1, false)); 
    shell.setText("StackOverflow"); 

    Composite scaleComp = new Composite(shell, SWT.NONE); 
    scaleComp.setLayout(new GridLayout(3, false)); 

    CLabel leftImage = new CLabel(scaleComp, SWT.RIGHT_TO_LEFT); 
    leftImage.setText("Left"); 
    leftImage.setImage(display.getSystemImage(SWT.ICON_ERROR)); 
    leftImage.setLayoutData(new GridData(SWT.BEGINNING, SWT.FILL, false, true)); 

    final Scale scale = new Scale (scaleComp, SWT.NONE); 
    scale.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true)); 
    scale.setMaximum (4); 
    scale.setPageIncrement (1); 
    scale.setSelection(4); 

    CLabel rightImage = new CLabel(scaleComp, SWT.NONE); 
    rightImage.setText("Right"); 
    rightImage.setImage(display.getSystemImage(SWT.ICON_INFORMATION)); 
    rightImage.setLayoutData(new GridData(SWT.BEGINNING, SWT.FILL, false, true)); 

    shell.pack(); 
    shell.open(); 
    while (!shell.isDisposed()) 
    { 
     if (!display.readAndDispatch()) 
      display.sleep(); 
    } 
    display.dispose(); 
} 

是這樣的:

enter image description here

+0

是否可以在圖標附近添加註釋? – user1365697 2013-05-08 10:40:50

+0

當然,下面,上面,左邊,右邊? – Baz 2013-05-08 10:41:14

+0

我是新的Java UI我想在每個圖標之前添加文本我怎麼能做到這一點? – user1365697 2013-05-08 10:43:07