[英]filename is displayed in tableviewer but when selected particular column the file location should be retrieved for processing the file in eclipse e4?
使用Filedialog
我正在選擇文件集並將其顯示在復選框表查看器中。 然后,我要處理那些在checkboxtableviewer中檢查過的文件。
public void setTableInput(File[] selectedFiles) {
for(int i = 0;i <selectedFiles.length; i++)
{
tableViewer.add(selectedFiles[i].getName());
}
tableViewer.addCheckStateListener(new ICheckStateListener() {
@Override
public void checkStateChanged(CheckStateChangedEvent event) {
Object[] filesSelected = tableViewer.getCheckedElements();
for(Object filename : filesSelected){
System.out.println("values "+ (String)filename);
}
}
});
}
對於我在此處編寫的代碼,我只能獲取文件名,如果我想根據選擇復選框中的文件名來獲取文件位置,請問誰能告訴我如何繼續?
提前致謝
您需要使用內容和標簽提供程序,以便可以將File
數組設置為表輸入。
public void setTableInput(File[] selectedFiles)
{
tableViewer.setContentProvider(ArrayContentProvider.getInstance());
tableViewer.setLabelProvider(new FileLabelProvider());
tableViewer.setInput(selectedFiles);
tableViewer.addCheckStateListener(new ICheckStateListener()
{
@Override
public void checkStateChanged(CheckStateChangedEvent event)
{
Object[] filesSelected = tableViewer.getCheckedElements();
for (Object fileObj : filesSelected)
{
File file = (File)fileObj;
System.out.println("values "+ file.getPath());
}
}
});
}
private static class FileLabelProvider extends LabelProvider
{
@Override
public String getText(final Object element)
{
File file = (File)element;
return file.getName();
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.