`
yianpuodiaotu
  • 浏览: 241558 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

如何访问当前Project???

阅读更多

【转】http://wiki.eclipse.org/FAQ_How_do_I_access_the_active_project%3F

作为新手,好多人会问:如果获取Active Project、Active File、and active folder。事实上,在eclipse中不存在“Active”Project 和File;只有当前的(currently)project和file。
那么如果获取呢?下面介绍常用的方式:
1.通过UI的ISelectionService获取project、file、folder
一但你获取了一个selection,你就可以获取选择的resource

IResource extractSelection(ISelection sel) {
      if (!(sel instanceof IStructuredSelection))
         return null;
      IStructuredSelection ss = (IStructuredSelection) sel;
      Object element = ss.getFirstElement();
      if (element instanceof IResource)
         return (IResource) element;
      if (!(element instanceof IAdaptable))
         return null;
      IAdaptable adaptable = (IAdaptable)element;
      Object adapter = adaptable.getAdapter(IResource.class);
      return (IResource) adapter;
   }

 2.通过IPartService获取resource

IResource extractResource(IEditorPart editor) {
      IEditorInput input = editor.getInput();
      if (!(input instanceof IFileEditorInput))
         return null;
      return ((IFileEditorInput)input).getFile();
   }

 3.IResource.getProject()

题外话,对于project、file等resource,我们通常说“selected”;对于编辑器、视图,我们通常说“Active”
 

IWorkbench iworkbench = PlatformUI.getWorkbench();
 if (iworkbench == null)...
 IWorkbenchWindow iworkbenchwindow = iworkbench.getActiveWorkbenchWindow();
 if (iworkbenchwindow == null) ...
 IWorkbenchPage iworkbenchpage = iworkbenchwindow.getActivePage();
 if (iworkbenchpage == null) ...
 IEditorPart ieditorpart = iworkbenchpage.getActiveEditor();
 

  IStructuredSelection
  ITextSelection
 

IWorkbench iworkbench = PlatformUI.getWorkbench();
 if (iworkbench == null)...
 IWorkbenchWindow iworkbenchwindow = iworkbench.getActiveWorkbenchWindow();
 if (iworkbenchwindow == null) ...
 IWorkbenchPage iworkbenchpage = iworkbenchwindow.getActivePage();
 if (iworkbenchpage == null) ...
 IEditorPart ieditorpart = iworkbenchpage.getActiveEditor();
 

 

分享到:
评论

相关推荐

    MSProject文件导入导出

    - 在使用`Microsoft.Office.Interop.MSProject`进行文件操作时,需要注意权限问题,确保当前应用程序具有足够的权限来访问和修改MSProject文件。 - 上传和下载文件的过程中,需要考虑网络传输的稳定性以及安全性。 -...

    pycharm 实现显示project 选项卡的方法

    通过project tab查看项目的目录层级结构非常方便,今早打开pycharm后突然就发现自己的pycharm没有project选项卡了,各种折腾,来,记录下吧: 目前的界面是这样的: 我想要的界面是这样的,平时不占用界面写代码,...

    Project2010自学详细教程

    用户可以通过 Project 2010 跟踪项目的进度,了解项目的当前状态、完成率、延迟等信息。 * 生成报表 用户可以生成项目报表,了解项目的进度、资源使用情况、成本等信息。 四、管理项目资源 * 管理项目资源 用户...

    Project2007专用模板

    2. 团队共享:对于团队项目,可以将模板上传至共享位置,确保所有成员都能访问和使用。 3. 版本控制:当模板更新或优化时,应进行版本控制,防止旧版模板的误用。 总结,Project2007专用模板是提升项目管理效率的...

    C# 导入Office Project

    在当前的信息化社会,办公自动化软件如Microsoft Office已经成为日常工作中不可或缺的一部分。Microsoft Office Project是Microsoft公司推出的项目管理工具,它能帮助项目管理者制定计划、分配资源、管理预算以及...

    Project导出成Excel的工具

    该工具允许用户选择当前活动的视图进行导出,这意味着Excel文件将反映Project中用户正在查看的信息。这使得导出的数据更加有针对性,确保了导出内容与用户的需求相匹配。 3. **智能处理特殊情况**:在实际应用中,...

    IntelliJ IDEA Project窗口的一些设置详解

    该快捷键可以在编辑区域使用,使Project窗口自动定位到当前编辑区所打开的文件的位置。 三、Autoscroll from Source 勾选Autoscroll from Source设置,可以使Project窗口自动定位到当前编辑区所打开的文件的位置。...

    Project案例1(含文档)

    5. **进度跟踪**:在项目执行过程中,可以更新任务的完成状态,Project会自动调整时间线并显示当前进度,帮助管理者识别潜在的延期风险。 6. **报告生成**:Project提供了多种报告模板,如项目摘要报告、资源使用...

    projectserver添加或删除任务摘要列.docx

    ##### 3.1 访问 PWA 设置 - **步骤一**:登录到 Project Web Access (PWA)。 - **步骤二**:找到并点击屏幕右上角的设置按钮(通常表示为齿轮图标)。 - **步骤三**:在下拉菜单中选择“PWA 设置”。 ##### 3.2 ...

    Power Designer 15新特性之:工程(Project)

    - **自定义模板**:可以在创建工程后,通过“文件”菜单中的“另存为模板(Save as Template)”命令,将当前工程保存为模板。 #### 六、结论 综上所述,Power Designer 15中的“工程(Project)”特性为大规模...

    PROJECT软件使用教程.

    * 当前操作报表 * 成本报表 * 工作分配报表 * 自定义报表 用户可以使用报表来跟踪项目的进度、成本和资源,并与项目团队成员共享项目信息。 结语 本教程指导用户学习 Project 2007 的使用,包括创建项目、定义...

    openproject

    对于那些需要跨部门或者远程协作的项目团队,OpenProject提供了云端版本,方便多用户实时同步和访问项目信息。 总之,OpenProject是一款强大的项目管理工具,结合了PERT和甘特图等经典方法,旨在提升项目管理的效率...

    project 2003项目管理案例分析

    Project 2003提供了甘特图视图,清晰显示了项目的时间线和当前进度,使得管理者能够及时发现延迟并采取纠正措施。 4. **报告生成**:软件具有丰富的报告生成功能,包括但不限于项目摘要、任务详细情况、资源使用...

    projectmanager

    在人员管理方面,"projectmanager"允许用户创建和维护一个详细的团队数据库,包括每个成员的专业技能、经验等级以及当前的工作状态。这使得项目经理在分配任务时能快速找到最合适的候选人,从而提高工作效率。此外,...

    Project简介.pptx

    - **项目报表**:Project提供了多种报表类型,如总览报表、当前操作报表、成本报表、工作分配和工作量报表等。这些报表可以帮助项目经理了解项目的状态,评估绩效,以及作出决策。 【创建项目文件】 1. **新建项目...

    Project导出EXCEL表工具(插件)

    2、 根据当前视图中的表格导出 3、 智能判断一些列的特殊情况进行处理 4、 开放源码 可能存在的问题 1、 在英文版中由于列名称不一样,导致工具运行可能有问题 2、 在低版本Project中运行可能存在问题

    ASIM PROJECT_forgottennaa_MSProject_project_policepaj_

    随着项目的推进,MS Project的甘特图可以帮助我们直观地查看项目的当前状态,了解是否按计划进行,以及是否需要进行调整。通过定期更新项目数据,项目经理可以确保团队对项目进度有清晰的理解,并能迅速响应任何偏差...

    microsoft office project 二次开发参考资源

    ### Microsoft Office Project 二次开发参考资源 #### 一、概述 Microsoft Office Project 是一款功能强大的项目管理软件,广泛应用于各种规模的企业中。随着业务需求的增长和技术的发展,许多组织选择对 ...

    Geekos project0完整实现

    它们被设计成中断当前执行的任务,执行特定的处理,然后恢复执行。 #### 4.4 系统调用 (`syscalls.asm`) 系统调用允许用户模式下的程序请求内核服务,如创建新进程、打开文件或写入磁盘。每个系统调用都有一个唯一...

    project 甘特图制作工具

    在主视图中,你会看到条形图表示的任务,其中绿色条形表示已完成的部分,灰色表示还未开始,而蓝色表示当前进行中。 5. **调整和优化**:甘特图提供了多种视图和调整选项。你可以通过拖动条形来改变任务的开始和...

Global site tag (gtag.js) - Google Analytics