翻譯|使用教程|編輯:莫成敏|2019-10-14 12:02:21.060|閱讀 269 次
概述:用于工業(yè)4.0項目管理、交互式的甘特圖絕佳解決方案,世界級甘特圖大師的VARCHART XGantt。本教程主要介紹VARCHART XGantt的拖動工具,這篇文章是上半部分內(nèi)容~
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
相關(guān)鏈接:
VARCHART XGantt是一個交互式的甘特圖控件,其模塊化的設(shè)計讓您可以創(chuàng)建滿足您和您的客戶所需求的應(yīng)用程序。(我們領(lǐng)先的甘特圖控件VARCHART XGantt可用于.NET,ActiveX和ASP.NET應(yīng)用程序。)
甘特圖使計劃人員可以通過來回移動來輕松地重新計劃訂單、任務(wù)或資源。但是,將節(jié)點定位在時間軸的某個點或緊接另一個節(jié)點之后可能會很棘手,因為甘特圖中的某個點必須被鼠標精確擊中。
此外,在許多甘特圖中,使用了多級組。在大型計劃中,如果目標組的位置很遠,則用鼠標將節(jié)點從一個組或其子組拖到另一個組有時,會帶來一些不便和混亂。
Snap工具:支持水平拖動
許多拖動應(yīng)用程序或設(shè)計工具已經(jīng)提供了所謂的snapgrid,以幫助通過預(yù)定義的網(wǎng)格(通常以像素間隔)精確定位對象。 VARCHART XGantt現(xiàn)在提供了類似的功能。移動的對象未調(diào)整為固定網(wǎng)格,而是調(diào)整為圖形中的其他對象,因此這些對象定義了具有不規(guī)則距離的網(wǎng)格。
節(jié)點(或其層)、日期行、行網(wǎng)格和日歷網(wǎng)格允許定義所謂的snap目標。這意味著這些對象在其自身上定義了某些位置,用作其他對象的snap動作的目標。當水平移動節(jié)點或修改節(jié)點或圖層的大小時,該節(jié)點或圖層的開始或結(jié)束日期將按時間順序調(diào)整為其他對象定義的snap工具。開始日期或結(jié)束日期將朝其附近5像素之內(nèi)的快照目標移動,因此將接管目標的確切日期。
已為每個節(jié)點布局定義了特殊的行為(未分組、分組、分層排列;假定相應(yīng)的對象定義了snap工具):
所有節(jié)點布局:將要移動的層調(diào)整為日期行、行網(wǎng)格和日歷網(wǎng)格。
未分組的布局:將要移動的圖層調(diào)整為所有節(jié)點的圖層。
分組布局:將要移動的層調(diào)整為一組(沒有子組)節(jié)點的層。如果在交互過程中更改了組,則層將被調(diào)整為新組的對象。
分層排列:將要移動的層調(diào)整為同一分支(帶有子分支)的節(jié)點的層。如果在交互過程中更改了分支,則會將圖層調(diào)整為新分支的對象。
為了使snap工具生效,必須在“節(jié)點”屬性頁面上將其啟用
API調(diào)用:vcGantt.UseSnapTargetsInInteractions = true / false
可以在“編輯圖層”對話框中將圖層定義為snap目標。選中“開始snap目標”和“結(jié)束snap目標”復選框,將圖層的位置(即日期)設(shè)置為拖動節(jié)點或圖層的snap目標。
API調(diào)用:
VcLayer.StartSnapTarget = true / false
VcLayer.EndSnapTarget = true / false
日期行可以在“指定日期行”對話框中定義為snap目標。勾選“snap目標”復選框,將日期行的位置(即日期)設(shè)置為捕捉節(jié)點或圖層的snap目標。
API調(diào)用:VcDateLine.SnapTarget = true / false
snap目標LINE GRIDS / CALENDAR GRIDS
行網(wǎng)格和日歷網(wǎng)格可以在兩個不同的位置定義為snap目標:
在“編輯時間標度”部分中,沒有單獨的對象
在單個、與組或節(jié)點的對象對話框下方。
選中“編輯時間標度”部分對話框中的相應(yīng)復選框,將相關(guān)對象的位置(即它們的日期)設(shè)置為拖動節(jié)點或圖層的snap目標。
在“分組”對話框中,您可以訪問“管理日歷網(wǎng)格”和“管理行網(wǎng)格”對話框,其中勾選相應(yīng)的復選框會將相關(guān)對象的位置(即它們的日期)設(shè)置為拖動節(jié)點或圖層的snap目標。
API調(diào)用:
VcDateLineGrid.SnapTarget = true / false
VcCalendarGrid.StartSnapTarget = true / false
VcCalendarGrid.StartSnapTarget = true / false
請注意:由于在移動多個節(jié)點時混合所有對象(即來自多個功能區(qū)的對象)的snap目標沒有意義,因此僅在移動單個節(jié)點時才考慮單個對象的snap目標。沒有提供將節(jié)點單獨snap到其所在的功能區(qū)的snap目標上的功能。
通過箭頭鍵移動節(jié)點
節(jié)點不僅可以通過鼠標進行交互式移動,還可以通過鍵盤上的鼠標鍵進行移動。為此,需要以下設(shè)置:
vcGantt1.ArrowKeyMode = VcArrowKeyMode.vcResizeOrMoveNode
值vcNodeJumpToSnapTarget已添加到枚舉VcArrowKeyMode。如果設(shè)置了此值,則按CTRL +向左或向右箭頭鍵會導致標記的節(jié)點snap到下一個或最后一個snap目標,這是一個循環(huán)操作:如果到達終點,則一切都從起點開始。
本教程內(nèi)容較長,敬請期待后面半部分內(nèi)容~感興趣的朋友可以點擊下載VARCHART XGantt試用版嘗試一下~
相關(guān)內(nèi)容推薦:
VARCHART XGantt 用戶手冊系列內(nèi)容>>>
想要購買VARCHART XGantt正版授權(quán),或了解更多產(chǎn)品信息請點擊
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請郵件反饋至chenjj@fc6vip.cn