我有一個嚮導頁面,它獲取了一個IFile列表。我想向用戶顯示列表並從列表中選擇一個文件。然後嚮導返回選定的文件。從嚮導頁面列表中選擇文件
有沒有一個標準的文件選擇器,我可以使用,而不是從頭開始在WizardPage的createControl()
? (可能類似於使用滾動條顯示列表的表視圖列表)
我有一個嚮導頁面,它獲取了一個IFile列表。我想向用戶顯示列表並從列表中選擇一個文件。然後嚮導返回選定的文件。從嚮導頁面列表中選擇文件
有沒有一個標準的文件選擇器,我可以使用,而不是從頭開始在WizardPage的createControl()
? (可能類似於使用滾動條顯示列表的表視圖列表)
有FilteredResourcesSelectionDialog
這是一個彈出窗口,顯示任何想要的資源,最終使用預加載的正則表達式,允許搜索文件,並且您給他一個根目錄:
你叫getResult()
檢索選擇爲Object []。
如果你只想做一個這樣做的嚮導,那麼我會這樣做。 如果它是一個列表包括在執行其他任務嚮導,然後只列出的所有文件,並創建一個org.eclipse.swt.widgets.List
雖然沒有現成的使用FileViewer或類似的,你可以使用一個TableViewer
與一個WorkbenchLabelProvider
來顯示文件列表。
IFile[] files = ...
TableViewer fileViewer = new TableViewer(parent);
fileViewer.setInput(files);
fileViewer.setContentProvider(ArrayContentProvider.getInstance());
fileViewer.setLabelProvider(new WorkbenchLabelProvider());
這將創建從files
陣列顯示文件的單選擇表(觀看者)。
如果適用多選或其他樣式,請使用new TableViewer(parent, SWT.MULTI | ...)
創建查看器。
如果文件列表需要按名稱或類型排序,可以使用org.eclipse.ui.ide
插件中的ResourceComparator
。
fileViewer.setComparator(new ResourceComparator(ResourceComparator.NAME));
如果你不想額外的插件依賴或需要通過其他標準來排序做,它仍可以作爲模板。