嘿,在 c# 或 java 中是否有一种简单的方法让用户将点“拖放”到表单上,然后在新点和现有点之间画线?
用简单的方式,我的意思是组件/框架/任何东西(甚至已经存在于 c#/java 中?)
当然; 不过,这将取决于框架和体系结构。C# WPF 与 C# WinForms 将有不同的方法,这将与 Java Swing 不同。
对于 Winforms,您只需根据由控件(如 Panel 或 PictureBox)界定的窗体的某个区域创建一个 Graphics 对象,然后在该控件的 MouseClick 事件上,记录鼠标的当前位置并在该位置和之间画一条线上一次点击(或所有其他点击)的位置。
如果你想拖放,就像从工具栏一样,那就有点复杂了;基本上,您需要跟踪拖动的内容以及放置的位置,以便在放置时可以执行正确的操作。我相信您将在 DragDrop 处理程序中获得的参数将为您提供此信息。
我不知道有什么库可以做到这一点,但是我为简化事情所做的事情是创建了 usercontrol 2x2,它表示一个点并允许用户通过拖放将其拖放到表单上。然而,线条是在 OnPaint(...) 中手动绘制的