因此,我有一个无边界的表单,我需要调整它的大小(通过单击4个边或角上的任意一个)。为了明确起见,我希望我的表单像Windows 7中的默认便笺一样是无边界的。
通过使用Julien Lebosquain在此文章中提供的代码,我可以使其工作(仅现在在右下角):
Resize borderless window on bottom right corner
但是,我真的很想在右下角显示拖动抓手图像。朱利安(Julien)在他的帖子中提到了有关夹持器的这一点:
我不确定如何在表单中执行此操作。有人可以指出我正确的方向吗?
谢谢你。
最佳答案
因此,在这里仔细阅读之后:http://msdn.microsoft.com/en-us/library/system.windows.forms.visualstyles.visualstyleelement.status.gripper.normal.aspx,我有了解决方案。
首先,覆盖表单的OnPaint()
事件。
protected override void OnPaint(PaintEventArgs e) {
base.OnPaint(e);
DrawGripper(e);
}
以及做图的方法。
public void DrawGripper(PaintEventArgs e) {
if (VisualStyleRenderer.IsElementDefined(
VisualStyleElement.Status.Gripper.Normal)) {
VisualStyleRenderer renderer = new VisualStyleRenderer(VisualStyleElement.Status.Gripper.Normal);
Rectangle rectangle1 = new Rectangle((Width) - 18, (Height) - 20, 20, 20);
renderer.DrawBackground(e.Graphics, rectangle1);
}
}
关于c# - 以无边界形式绘制抓爪,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4917501/