在skyline中获取当前鼠标的位置坐标,屏蔽右键菜单

在skyline中获取当前 鼠标的位置坐标代码。

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using TerraExplorerX;

 /*====================================================================
标 题:“Skyline范例程序说明”。
范例简介:实现获取当前鼠标三维窗体中的坐标与屏蔽鼠标右键菜单
使用步骤:
     1. 使用组合键Ctrl+O,打开数据源文件(*.fly)。
     2、点击主窗体中移动鼠标。
 =====================================================================*/

namespace SightAnalysis
{
    public partial class MainForm : Form
    {
        //TerraExplorer自定义变量
        private TerraExplorer objTerraExplorer;
        private IMenu objIMenu;
        private IRender5 objRender5;
        private IPlane5 objIPlane5;

        private ViewLineAnaysis.ViewlineAnalysisWindow FormViewLine;

        public MainForm()
        {
            InitializeComponent();
            //实例化TE对象
            objTerraExplorer = new TerraExplorer();

            objTerraExplorer.OnFrame += new _ITerraExplorerEvents5_OnFrameEventHandler(objTerraExplorer_OnFrame);

            objTerraExplorer.OnRButtonDown += new _ITerraExplorerEvents5_OnRButtonDownEventHandler(objTerraExplorer_OnRButtonDown);
           
        }

        //屏蔽鼠标右键菜单
        void objTerraExplorer_OnRButtonDown(int Flags, int X, int Y, ref object pbHandled)
        {

            pbHandled = true;
        }

        //获取当前鼠标对应的坐标
        void objTerraExplorer_OnFrame()
        {
            objRender5 = objTerraExplorer as IRender5;
            double dX,dY,dH;
            object oFlag,oScreenX,oScreenY;
            objRender5.GetMouseInfo(out oFlag, out oScreenX, out oScreenY);
            objRender5.ScreenToTerrain(Convert.ToInt32( oScreenX),Convert.ToInt32( oScreenY), out dX, out dY, out dH);
            //throw new NotImplementedException();
            //this.Text = dX.ToString() + ";" + dY.ToString();
            txt_X.Text = dX.ToString();
            txt_Y.Text = dY.ToString();
            txt_H.Text = dH.ToString();

        }

        //初始化主窗体

      private void FormMail_Load(object sender, EventArgs e)
        {
             objTerraExplorer.Load(@"D:/*******.FLY");
        }
 }

 

转自http://lxliukang.blog.163.com/blog/static/1383246922010427116843/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值