[英]Deselect a selected object in Fabric.js
我的畫布上有多個類型對象。 我可以在特定對象上進行縮放,旋轉等所有操作。
但是當我選擇一個特定的對象時,我想改變它的stroke
顏色。
canvas.observe('mouse:down', function(e) {
activeInstance = canvas.getActiveObject();
activeGroupInstance = canvas.getActiveGroup();
if (activeInstance!=null){
activeInstance.set("stroke","#FF0000");
}
}
代碼效果很好。 但問題是stroke
顏色或任何其他有效property
不直接反映,這意味着我必須取消選擇當前選定的對象以查看其屬性的更改。 所以我的問題是出了什么問題? 如果這是我們必須取消選擇/單擊所選對象的常見行為,那么,如何使用代碼取消選擇所選對象,即不使用鼠標單擊只需使用代碼片段。
我們可以使用以下解決方案。
要丟棄所有活動組,您可以在函數下面使用.Discards當前活動組和激活事件如果由於鼠標事件而由Fabric調用該函數,則該事件將作為parmater傳遞並發送到fire函數以進行自定義事件。 當用作方法時,e param沒有任何應用。
canvas.discardActiveGroup();
要丟棄sigle對象,您可以像這樣使用。 丟棄當前活動的對象和火災事件。 如果由於鼠標事件而由fabric調用該函數,則該事件將作為parmater傳遞並發送到fire函數以獲取自定義事件。 當用作方法時,e param沒有任何應用。
canvas.discardActiveObject();
我最后一次最終渲染頂部畫布和輔助容器畫布。
canvas.renderAll();
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.