在 SAPUI5 simple.GanttChartContainer 中,我为所有不同的对象类型、项目..任务...里程碑...图标设置了一个自定义行设置对象。我使用了与此示例相同的技术:
在此之前,我使用了 shape1 聚合,它确实会自动显示选择边框。
有人知道如何将图表 shapeSelectionSettings 应用于我的自定义聚合中的形状吗?或者任何其他解释为什么这些选择边界没有出现?
我花了一些时间简化和回溯——这是我的观点。目前,即使 Resize 和 Connect 都已启用并连接到事件处理程序,并且我的 BaseRectangle 是可调整大小和可连接的,但未绘制选择,未绘制连接框,并且当悬停在调整大小手柄上时,EW 光标也不会出现。控制器只是设置轴和加载数据。我不知道为什么它停止工作 - 我什至尝试过早期版本的 SAPUI5。
任何帮助表示赞赏。
<View
xmlns="sap.ui.core.mvc"
xmlns:m="sap.m"
xmlns:f="sap.ui.layout.form"
xmlns:core="sap.ui.core"
xmlns:gnt2="sap.gantt.simple"
xmlns:projectpro="ProjectPro.controller"
xmlns:gnt-cal="sap.gantt.def.cal"
xmlns:axistime="sap.gantt.axistime"
controllerName="ProjectPro.controller.MasterPlanning"
id="MasterPlanningMain">
<m:Page xmlns="sap.ui.table" title="{branding>/ProductName} Master Planning" showNavButton="false" contentOnlyBusy="true">
<gnt2:GanttChartContainer id="container" enableTimeScrollSync="true">
<!--Activities/Milestones/Relationships-->
<gnt2:GanttChartWithTable id="ActivityView"
shapeSelectionMode = "Single"
shapeSelectionSettings="{color: 'red', strokeDasharray:'1,0'}"
class="sapUiSizeCondensed"
shapeResize="activities_shapeResize"
shapeConnect="activities_shapeConnect"
>
<gnt2:table>
<TreeTable
selectionMode="None"
visibleRowCountMode="Auto"
rows="{
path: 'plandata>/data',
parameters: { arrayNames: [ 'children' ] }
}">
<rowSettingsTemplate>
<gnt2:GanttRowSettings rowId="{id}" relationships="{ path:'plandata>/links', templateShareable: 'true' }">
<gnt2:BaseRectangle
shapeId="{plandata>id}"
time="{plandata>start_date}"
endTime="{plandata>end_date}"
resizable="true"
selectable="true"
draggable= "true"
connectable="true"
title="{plandata>text}" showTitle="true"
tooltip=""
fill="#4cc"
/>
<gnt2:relationships>
<gnt2:Relationship shapeId="{plandata>id}"
predecessor="{plandata>source}" successor="{plandata>target}" type="{plandata>gantttype}" tooltip="{= ${plandata>display_link} }"
selectable="true" />
</gnt2:relationships>
</gnt2:GanttRowSettings>
</rowSettingsTemplate>
<!--Tree Table Columns-->
<Column sortProperty="text" filterProperty="text" width="30em">
<m:Text text="Activity" wrapping="false"/>
<template>
<m:Input value="{= ${plandata>text} }" change="nodeRenamed" class="activity_text" />
</template>
</Column>
</TreeTable>
</gnt2:table>
</gnt2:GanttChartWithTable>
</gnt2:GanttChartContainer>
</m:Page>
</View>