日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

DeepEarth中的拖放行为(DragBehavior)

發布時間:2025/7/14 44 豆豆
生活随笔 收集整理的這篇文章主要介紹了 DeepEarth中的拖放行为(DragBehavior) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
在DeepEarth中,地圖的拖放行為用于規范用戶在操作地圖的時候的選擇、移動和繪制等操作模型。DeepEarth以枚舉結構將其封裝在地圖控件(Map)的內部,源代碼如下: 代碼 ///?<summary>
///?地圖拖放行為
///?</summary>
public?enum?DragBehavior
{
????
///?<summary>
????
///?鼠標成手型圖標點在地圖上拖放,地圖的呈現隨同鼠標的拖動進行移動并定位于鼠標釋放的位置。
????
///?</summary>
????Pan,

????
///?<summary>
????
///在地圖上通過選擇繪制出一個選框圖形,當鼠標釋放選擇的時候將地圖放大級別顯示。
????
///?</summary>
????Select,

????
///?<summary>
????
///?在地圖上繪制圖形。
????
///?</summary>
????Draw
}

?

  在DeepEarth中的拖放行為默認被定義為鼠標拖放行為,當用戶在所呈現的地圖上操作地圖的時候,鼠標成手型圖標點在地圖上拖放地圖,當鼠標釋放拖動并將地圖定位于鼠標釋放拖動的地圖位置。默認的拖放行為在源代碼中被定義為如下:

//地圖拖放行為
private?DragBehavior?_DragMode?=?DragBehavior.Pan;

?

  上面對地圖的拖放行為進行了簡單的描述,下面我們來看看如何在開發中使用地圖的拖放行為,我們可以在界面上放置一個Button來做個實驗,通過點擊按鈕實現切換地圖拖放行為的功能:

代碼 ///?<summary>
///?改變地圖的拖放行為
///?</summary>
///?<param?name="sender"></param>
///?<param?name="e"></param>
private?void?btnDragBehavior_Click(object?sender,?RoutedEventArgs?e)
{
????
//判斷當前地圖的拖放模式--實現兩種模式之間切換
????switch?(mapInstance.DragMode)
????{
????????
case?Map.DragBehavior.Pan:
????????????mapInstance.DragMode?
=?Map.DragBehavior.Select;
????????????ToolTipService.SetToolTip(btnDragBehavior,?
"切換到選擇放大模式");
????????????btnDragBehavior.Content?
=?"選擇";
????????????
break;
????????
case?Map.DragBehavior.Select:
????????????mapInstance.DragMode?
=?Map.DragBehavior.Pan;
????????????ToolTipService.SetToolTip(btnDragBehavior,?
"切換到拖放平移模式");
????????????btnDragBehavior.Content?
=?"拖放";
????????????
break;
????}
}

?

?

  上面代碼塊思路非常清晰,通過當前地圖的拖放行為進行判斷,交替設置地圖的拖放行為,編譯程序后運行效果如下圖所示:

        

  

  按扭放在地圖中間不太好看,我們可以通過上一篇《探索DeepEarth的內置控件》中所介紹的方法將拖放模式的切換觸發功能按扭移置到功能導航菜單上去,這樣整體看上去的感覺就大不一樣了。

        ?

?

  這里改變了下界面布局,將原來直接適用按鈕顯示文字的方式更改為適用圖片的方式,?通過不同的拖放行為來操作地圖,此功能的切換實現非常方便、簡單,但卻非常適用。我們可以通過擴展地圖的拖放行為實現很多功能,比如在地圖上插標、選點、框選等復雜的操作,本文暫時不做介紹,在后續相關文章里在詳細介紹如何實現這些功能。

?

版權說明

? 本文屬原創文章,歡迎轉載且注明文章出處,其版權歸作者和博客園共有。??

? 作??????者:Beniao

?文章出處:http://beniao.cnblogs.com/? 或? http://www.cnblogs.com/

?

轉載于:https://www.cnblogs.com/beniao/archive/2010/01/27/1657265.html

總結

以上是生活随笔為你收集整理的DeepEarth中的拖放行为(DragBehavior)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。