你的这个控件应该是组合了3个控件,而不是它自己 paint。
你可以用数据结构入手。 你OnPaint的时候,需要把【文字点击1】画在某个区域。 记录这个区域,鼠标点击时,就可以利用这些区域数据,来判断点击在什么上面。
页面? 是在做网页? 不是有 area 标记吗? 如果是做桌面程序,那么可以在 GraphicsPath 写文字 GraphicsPath 提供有相应的方法,用以检查点是否在路径中
建议尽量采用3个控件的组合,也不是说一个控件不能实现,但程序复杂性的确会增加.其1判断坐标,如果窗体拉伸和控件被无规则拉伸坐标发生了变化呢?了呢?其2几个鼠标的事件你都要依次审视一下.但是还是能实现的.只是相对来说. 用3个控件组合来说就简单多了,点了那个控件触发那个控件的事件.
110,538
社区成员
642,577
社区内容
加载中
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧