有没有简单的方法来移动图片部分(使用DrawImage
或DrawString
创建的任何内容)?
我的聪明主意:
覆盖DrawImage(DrawString)
方法添加能力,用于存储绘制图像的宽度,高度,左侧,顶部(如果我使用DrawImage
方法,则可以是可调整的布尔变量)到对象列表。将函数“WhatToMove”附加到PictureBox的MouseMove
事件,该事件遍历存储的矩形对象列表,检测矩形光标在哪里,如果可调整大小的矩形,则检测光标是否在任何矩形的边界上并将此内容传递为单击时,MouseDown
函数的参数。然后MouseDown
函数将新函数“MoverResizer”附加到MouseMove
事件,该事件使用移动或调整大小的图像部分重绘图片框,更新列表中的正确矩形对象,并从{{分离“WhatToMove” 1}}。在MouseMove
和PictureBox的Leave事件中分离“MoverResizer”并附加“WhatToMove”。
如果您认为这个想法可以存在,那么如果告诉我如何覆盖DrawImage,那将对您有所帮助。
我的愚蠢想法:
创建没有文字和边框的标签,并将它们放在PictureBox正确的图像部分上方。然后用自己的活动让它们变得可拖动和相当大。然后将标签的位置转换为图片部分的位置并重绘图片框。这很简单,但我认为不如上述方法那么完美。