网站首页 > 开源技术 正文
这篇文章给大家讲解 dhtmlxGantt如何进行布局定制。
DHTMLX Gantt官方最新版免费下载试用,历史版本下载,在线文档和帮助文件下载-慧都网
布局定制
您可以使用其他布局视图更改默认布局配置并指定在页面上排列甘特图元素的必要方案。
例如,您可以创建额外的网格和时间线视图,这些视图将为主甘特图创建一个底部资源面板。 实施这样的步骤 自定义布局是:
- 创建多行布局
- 将默认网格和时间线添加到布局的第一行
- 将额外的网格和时间线添加到下一行并将它们绑定到自定义数据源
- 在这些行之间添加调整大小
- 将滚动条添加到最后一行并将其绑定到默认时间轴和资源时间轴
gantt.config.layout = {
css: "gantt_container",
rows:[
{
// the default layout
cols: [
{view: "grid",
config: mainGridConfig, scrollY:"scrollVer"},
{resizer: true, width: 1},
{view: "timeline",
scrollX:"scrollHor", scrollY:"scrollVer"},
{view: "scrollbar", id:"scrollVer"}
]
},
{resizer: true, width: 1},
{
// a custom layout
cols: [
{view: "grid", id: "resourceGrid", bind:"resource",
config:resourceGridConfig, scrollY:"resourceVScroll"},
{resizer: true, width: 1},
{view:"timeline", id:"resourceTimeline", scrollX:"scrollHor",
bind:"resource", bindLinks: null, layers: resourceLayers,
scrollY:"resourceVScroll"},
{view: "scrollbar", id:"resourceVScroll"}
]
},
{view: "scrollbar", id:"scrollHor"}
]
};
在上面的示例中,添加了一个额外的网格视图。它包含资源列表及其工作量。还有一个额外的 时间线视图,显示当月的工作时间分布,并指示标准和加班时间。
自定义网格和时间线的属性
自定义网格和时间线具有其他属性:
对于网格和时间线视图
- bind - ( string ) 设置数据存储的id以从(示例中的“resource”)获取数据
对于时间线视图
- bindLinks - ( string ) 指向链接的来源。null,如果没有相关链接;
- layers - ( array ) 一个配置选项,定义为一组 addLayer() 函数,描述了数据样式的方式。
为自定义视图添加数据存储
要使用相应数据填充自定义视图,您需要添加单独的数据存储。要创建新的数据存储,请使用方法createDatastore并指定数据存储的配置:
var resourcesStore = gantt.createDatastore({
name:"resource",
initItem: function(item){
item.id = item.key || gantt.uid();
return item;
}
});
在上面的示例中,添加了一个名为“resource”的数据存储。
要将数据从数据存储区加载到自定义视图中,请使用parse方法:
resourcesStore.parse([// resources
{key:'0', label: "N/A"},
{key:'1', label: "John"},
{key:'2', label: "Mike"},
{key:'3', label: "Anna"}
]);
要返回必要数据存储的配置对象,请使用getDatastore方法:
var tasksStore = gantt.getDatastore("task");
该方法将数据存储的名称作为参数。
动态禁用/启用调整大小
在某些情况下,您可能需要动态禁用甘特图单元之间的调整大小。最简单的解决方案是通过 CSS 隐藏它们。
为此,您需要如下规则:
.no_resizers .gantt_resizer{
display:none;
}
然后,您可以通过将类附加到甘特图的容器来隐藏调整大小:
gantt.$container.classList.add("no_resizers");
要再次显示调整大小,只需删除该类:
gantt.$container.classList.remove("no_resizers");
dhtmlxGantt是用于跨浏览器和跨平台应用程序的功能齐全的Gantt图表,可满足项目管理应用程序的所有需求,是最完善的甘特图图表库。了解更多DhtmlxGantt相关内容,请锁定本套系列教程。
猜你喜欢
- 2024-10-23 界面组件DevExpress ASP.NET Core v21.2 - 流程图、甘特图增强
- 2024-10-23 教你解锁Markdown高级用法,提升写作效率,建议收藏
- 2024-10-23 比Visio更智能,适用于Mac的思维导图制作工具推荐
- 2024-10-23 前端开发程序员请收:十步用Webix创建一个Email客户端
- 2024-10-23 画项目管理横道图,国产软件也很方便实用!
- 2024-10-23 WinForms界面控件初探:快速、直观、丰富的图表控件WinForms Chart Control
- 2024-10-23 还在用 Excel 排项目计划?试试专业项目管理软件:OmniPlan
- 2024-10-23 Markdown之甘特图(甘特图 mac)
- 2024-10-23 一文详解DevExpress的HTML & CSS模板如何实现集合渲染
- 2024-10-23 界面控件DevExpress WinForm——HTML-CSS感知控件介绍
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- jdk (81)
- putty (66)
- rufus (78)
- 内网穿透 (89)
- okhttp (70)
- powertoys (74)
- windowsterminal (81)
- netcat (65)
- ghostscript (65)
- veracrypt (65)
- asp.netcore (70)
- wrk (67)
- aspose.words (80)
- itk (80)
- ajaxfileupload.js (66)
- sqlhelper (67)
- express.js (67)
- phpmailer (67)
- xjar (70)
- redisclient (78)
- wakeonlan (66)
- tinygo (85)
- startbbs (72)
- webftp (82)
- vsvim (79)
本文暂时没有评论,来添加一个吧(●'◡'●)