GDI+和C#结合的相关问题

GDI+绘图功能已经完成,并且已经将绘制的图形保存到SQL数据库里,现在有个问题,就是能否实现,我用鼠标点击在窗体上已经显示的图形,比如点,或者线,或者面,然后能使图形高... GDI+绘图功能已经完成,并且已经将绘制的图形保存到SQL数据库里,现在有个问题,就是能否实现,我用鼠标点击在窗体上已经显示的图形,比如点,或者线,或者面,然后能使图形高亮显示(换一种颜色显示也可以),并且在对应的DateGridView上显示出相应的数据(窗体上有一部分是datagridview表格,点线面都存在里头),比如我选了一条线段,那么在表里就会显示出这个线段的起始坐标那条数据和终点坐标的那条数据 展开
 我来答
阳光的雷咩咩
2014-11-07 · TA获得超过1.4万个赞
知道大有可为答主
回答量:2.3万
采纳率:66%
帮助的人:7711万
展开全部
假定你在后台先定义了2点,并根据这2点在界面上画了条线段,简单说说实现选中方法:先写个函数,返回鼠标距离此线段的距离(这就要用解析几何的知识了),然后在控件的mousemove事件中,计算鼠标的距离,如果在某个范围内(比如几个像素,可以定义为常量),则视为已选中。然后重新画其他颜色的线段覆盖原来的线段。这样看上去就像鼠标点击了线段一样。实际上背后是一系列计算。
追问
谢谢
大神,我有问题,我用你的思路 写了个方法 是计算点到线的距离,如果鼠标点下去的那个点距离线段小于某个值的时候,表示选中这个线段了,可是算法上貌似出现问题了…
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式