2
好了,所以我有形象創造這樣的:添加鼠標監聽到Java SWT圖像
Image deleteImage = new Image(viewer.getTable().getDisplay(),
Provider.PATH_TO_DELETE_ICON);
如何添加鼠標偵聽器,所以我知道被點擊圖像時?
這裏是我的標籤供應商類:
private class MyLabelProvider extends LabelProvider implements
ITableLabelProvider {
@Override
public Image getColumnImage(Object element, int columnIndex) {
if (columnIndex == 3) {
Image deleteImage = new Image(viewer.getTable().getDisplay(),
Provider.PATH_TO_DELETE_ICON);
return deleteImage;
}
if (columnIndex == 4) {
Image editImage = new Image(viewer.getTable().getDisplay(),
Provider.PATH_TO_EDIT_ICON);
return editImage;
} else
return null;
}
public String getColumnText(Object element, int index) {
Provider provider = (Provider) element;
switch (index) {
case 0:
return Integer.toString(provider.getId());
case 1:
return provider.getName();
case 2:
return provider.getBulstat();
default:
return "";
}
}
}
這將是解決方案,但它需要是一個圖像,因爲我從查看器的LabelProvider獲取它。如果你能告訴我一個LabelProvider的getImage方法如何返回一個Button而不是一個可能是解決方案的圖像。 – dsthetics 2012-07-20 13:04:52
創建您自己的'LabelProvider'並覆蓋'getImage()'方法?只是猜測,還沒有使用'LabelProvider'。剛剛意識到,如果你改變返回類型,你不能重寫一個方法......然後我不知道該怎麼做。 – Baz 2012-07-20 13:06:24
是啊,不能像這樣覆蓋它... – dsthetics 2012-07-20 13:13:38