add(Object, Object) 为æ¥çå¨ä¸æå®å
ç´ æ·»å åå
ç´ ã
add(Object, Object[]) 为æ¥çå¨ä¸æå®å
ç´ æ·»å è¥å¹²åå
ç´ ã
addTreeListener(ITreeViewerListener)为æ¥çå¨æ·»å å±å¼æ¶ç¼©äºä»¶çå¬å¨ã
collapseAll() æ¶ç¼©æ æ¥çå¨çææèç¹ï¼åªæ¾ç¤ºæ ¹èç¹ã
collapseToLevel(Object, int) 以æå®å
ç´ ä¸ºæ ¹ï¼æ¶ç¼©å°æå®å±æ¬¡ã
expandAll() ä»æ ¹èç¹å¼å§ï¼å±å¼ææèç¹ã
expandToLevel(int)å°æ¥çå¨å±å¼å°æå®å±æ¬¡ã
expandToLevel(Object, int) å±å¼æå®å
ç´ çææç¶èç¹ï¼ä½¿æå®å
ç´ å¯è§ã并以æå®å
ç´ ä¸ºæ ¹ï¼å±å¼å°æå®å±æ¬¡ã
getExpandedElements() è¿åæ¥çå¨ä¸å±å¼èç¹å¯¹åºå
ç´ çå表ï¼å
æ¬é£äºè¢«æ 记为å±å¼ç¶æ,ä½æ¯å 为ç¶èç¹æ¯æ¶ç¼©çï¼æ以å½åéèçå
ç´ ã
getExpandedState(Object) è¿åæå®å
ç´ å¯¹åºçèç¹æ¯å±å¼è¿æ¯æ¶ç¼©ç¶æã
Tree getTree() è¿åæ æ¥çå¨çæ æ§ä»¶ã
getVisibleExpandedElements() è·åç¨æ·å¯è§çå±å¼å
ç´ ã
isExpandable(Object) è¿åæå®å
ç´ å¯¹åºçèç¹æ¯å¦å¯ä»¥è¢«å±å¼ã
remove(Object) ä»æ¥çå¨ä¸å é¤æå®å
ç´ ã
remove(Object[])ä»æ¥çå¨ä¸å é¤æå®å
ç´ ã
reveal(Object) æ»å¨æ¥çå¨ï¼ç¡®ä¿æå®å
ç´ è¢«æ¾ç¤ºã
scrollDown(int, int) Scrolls the viewer's control down by one item from the given display-relative coordinates.
scrollUp(int, int) Scrolls the viewer's control up by one item from the given display-relative coordinates.
setAutoExpandLevel(int) 设置èªå¨å±å¼å±æ¬¡çº§å«ã
setContentProvider(IContentProvider) AbstractTreeViewerå®ç°è¯¥æ¹æ³ï¼ç¡®ä¿è¾å
¥çå
容æ¥çå¨ä¸º ITreeContentProviderã
setExpandedElements(Object[]) 设置å±å¼çèç¹ã
setExpandedState(Object, boolean) 设置æå®å
ç´ å¯¹åºçèç¹ä¸ºå±å¼è¿æ¯æ¶ç¼©ã
setLabelProvider(IBaseLabelProvider) æ æ¥çå¨å®ç°Viewer æ¡æ¶ç该æ¹æ³ç¡®ä¿è¾å
¥çæ ç¾æ¥çå¨ä¸ºILabelProviderã
addCheckStateListener(ICheckStateListener) 为æ¥çå¨å¢å éä¸ç¶ææ¹åçå¬å¨ã
getChecked(Object)è¿åæå®å
ç´ çéä¸ç¶æã
getCheckedElements() è¿åæ¥çå¨çéä¸å
ç´ å表ï¼å
æ¬é£äºè¢«æ 记为éä¸ç¶æ,ä½æ¯å 为ç¶èç¹æ¯æ¶ç¼©çï¼æ以å½åéèçå
ç´ ã
getGrayed(Object) è¿åæå®å
ç´ çæ³ç°ç¶æã
getGrayedElements() è¿åæ¥çå¨çæ³ç°å
ç´ å表ï¼å
æ¬é£äºè¢«æ 记为æ³ç°ç¶æ,ä½æ¯å 为ç¶èç¹æ¯æ¶ç¼©çï¼æ以å½åéèçå
ç´ ã
setChecked(Object, boolean)设置æå®å
ç´ çéä¸ç¶æã
setCheckedElements(Object[]) 设置æ¥çå¨çéä¸å
ç´ ã
setGrayChecked(Object, boolean) 设置æå®å
ç´ è¢«éä¸å¹¶æ³ç°ï¼çåäºè°ç¨setGrayed å setCheckedæ¹æ³ã
setGrayed(Object, boolean) 设置æå®å
ç´ çæ³ç°ç¶æã
setGrayedElements(Object[]) 设置æå®å
ç´ ä¸ºæ³ç°ç¶æã
setParentsGrayed(Object, boolean) 设置æå®å
ç´ åå
¶ç¶å
ç´ ä¸ºæ³ç°ç¶æã
setSubtreeChecked(Object, boolean) 设置æå®å
ç´ åå
¶åå
ç´ çéä¸ç¶æã
ä¸é¢çç¨åºä¾åå±ç¤ºäºææ ·æ建ä¸ä¸ªæ æ¥çå¨ã(åè§
import org.eclipse.jface.viewers.*;
import org.eclipse.swt.*;
import org.eclipse.swt.layout.*;
import org.eclipse.swt.widgets.*;
public class TreeViewerExample {
public static void main(String[] args) {
Display display = new Display();
Shell shell = new Shell(display);
shell.setText("Tree Viewer Example");
shell.setBounds(100, 100, 200, 200);
shell.setLayout(new FillLayout());
final TreeViewer treeViewer =
new TreeViewer(shell, SWT.SINGLE);
treeViewer.setLabelProvider(
new PersonListLabelProvider());
treeViewer.setContentProvider(
new PersonTreeContentProvider());
treeViewer.setInput(Person.example());
shell.open();
while (!shell.isDisposed()) {
if (!display.readAndDispatch()) display.sleep();
}
display.dispose();
}
}
import org.eclipse.jface.viewers.*;
public class PersonTreeContentProvider
extends ArrayContentProvider
implements ITreeContentProvider {
public Object[] getChildren(Object parentElement) {
Person person = (Person) parentElement;
return person.children;
}
public Object getParent(Object element) {
Person person = (Person) element;
return person.parent;
}
public boolean hasChildren(Object element) {
Person person = (Person) element;
return person.children.length > 0;
}
}
相关推荐
**JFace Viewer 知识点详解** 在Java开发领域,特别是使用Eclipse RCP(Rich Client Platform)进行桌面应用开发时,JFace是不可或缺的一部分。JFace是SWT(Standard Widget Toolkit)的一个扩展,提供了更高级别的...
4. **Command Framework**:JFace 提供了一个命令框架,使得开发者可以声明性地定义应用程序中的操作和命令。这有助于解耦UI与业务逻辑,使得命令可以在不同上下文中重复使用。 5. **Action和ToolBar Support**:...
SWT GridViewer_1.0包是针对Java开发者的一个组件库,主要包含了两个核心的JAR文件:`org.eclipse.nebula.jface.gridviewer_1.0.0.jar`和`org.eclipse.nebula.widgets.grid_1.0.0.jar`。这两个文件提供了强大的数据...
2. **Viewer**:JFace中的Viewer是用于展示数据的组件,它可以是表、树或其他形式。Viewer提供了数据管理、排序、过滤等功能,并能与 SWT 控件如Table、Tree等无缝集成。 3. **Dialogs and Wizards**:JFace提供了...
2. **Viewers**:JFace的Viewer是一个通用的组件容器,它可以用来展示数据集合,比如TableViewer、TreeViewer等。Viewer提供了丰富的事件处理机制和扩展接口,方便自定义行为。 3. **Dialogs and Wizards**:JFace...
在Java编程领域,`jface` 是Eclipse项目的一部分,它提供了一系列的用户界面组件,使得开发者能够更容易地创建复杂的图形用户界面(GUI)。`TreeView` 是jFace中用于展示层次结构数据的一个重要控件,它允许用户以树...
在Java编程环境中,JFace库是Eclipse RCP(Rich Client Platform)的一部分,它提供了一套高级用户界面组件,如TableViewer和TreeViewer,用于构建桌面应用程序。在文档标题和描述中提到的问题主要涉及到JFace中的...
4. **Dialogs 和 Wizards**:在 SWT/Jface API 3.4 中,提供了丰富的对话框和向导类,如 MessageDialog、InputDialog、FileDialog 等,帮助开发者快速创建常见的用户交互。向导(Wizard)则是一种引导用户完成多步骤...
2. **Viewer Framework**:JFace的`TableViewer`和`TreeViewer`提供了强大的表格和树形视图管理,支持数据模型、过滤、排序等功能。例如,创建一个表格展示数据: ```java Table table = new Table(shell, SWT....
`org.eclipse.jface.viewers`包中的Viewer类为数据展示提供了统一的接口,可以方便地绑定数据源到视图上,如TableViewer和TreeViewer。此外,JFace还引入了`org.eclipse.jface.databinding`包,支持数据绑定,使得...
5. **Table and Tree Viewer**: JFace的TableViewer和TreeViewer是对SWT表格和树组件的增强,提供了更多的功能,如排序、过滤、分页,以及与模型数据的紧密集成。 6. **Action Framework**: JFace的动作框架允许...
6. 学习资源:SWT/JFace 3.5 API文档不仅是开发过程中不可或缺的参考,还可以配合Eclipse插件如Eclipse Help Viewer,进一步提升阅读体验。同时,开发者社区提供了丰富的教程、示例代码和论坛讨论,为学习和解决实际...
- **视图与控制器**:介绍如何创建JFace视图,利用Viewer框架展示数据,并实现相应的控制器逻辑。 - **对话框与消息框**:展示如何创建自定义对话框,以及使用标准的MessageDialog和InputDialog。 5. **第三章:...
JFace的控件如Viewer和EditPart抽象了SWT的细节,使开发者可以专注于业务逻辑而非底层实现。JFace还提供了视图、编辑器、命令和工作台等核心框架,这些都是Eclipse IDE的基础。 在学习SWT和JFace时,你需要了解它们...
4. **源代码分析**:通过研究这些源代码,开发者可以学习到如何初始化SWT和JFace工作台,如何创建窗口和视图,如何添加控件并处理用户交互,以及如何组织和管理应用程序的数据。此外,代码中可能还包括错误处理和...
**4. 行号和折叠区(Line Numbers and Folding Regions)** JFace Text Framework也支持添加行号和折叠区域的功能,这对于阅读和管理大型代码文件非常有帮助。`VerticalRuler`和`SourceViewer`可以协同工作,显示...
例如,`org.eclipse.jface.viewers.Viewer`是JFace的核心组件,它封装了SWT的控件,并提供了模型-视图的分离,使数据和显示分离。`org.eclipse.jface.dialogs.Dialog`则是一系列对话框的基类,可以方便地创建自定义...
接下来,学习JFace的数据绑定和视图模型,如Viewer和LabelProvider、ContentProvider,它们负责在UI和数据模型之间建立联系。此外,Action和Command框架也是JFace的核心部分,提供了创建菜单、工具栏按钮等操作的...
这会涉及到JFace的Data Binding Support(DBS)和Viewer类。 ### 学习和实践 通过运行这些实例,你可以深入理解SWT和JFace的用法,学习如何设计布局、处理事件、创建自定义控件以及如何将业务逻辑与界面分离。每个...
4. 视图和编辑器:JFace支持Eclipse插件开发中的视图(View)和编辑器(Editor)概念,提供了用于构建工作台界面的框架。 三、SWT-JFace 3.5 API详解 在SWT-JFace 3.5 API文档中,每个类和接口都详尽地介绍了其...