2
我有一个窗体,我用作启动画面。由于它是一个飞溅,它没有边界。初始屏幕是白色的,所以当它加载的东西是白色的时候它看起来很有趣。我正在考虑在约1像素左右的表单上添加一个轮廓,以便为它指定一个细小的边框。可以把它看作是在Photoshop中为图像添加笔划。我将如何做到这一点?我正在使用vb.net。如何绘制无边界形式的轮廓?
我有一个窗体,我用作启动画面。由于它是一个飞溅,它没有边界。初始屏幕是白色的,所以当它加载的东西是白色的时候它看起来很有趣。我正在考虑在约1像素左右的表单上添加一个轮廓,以便为它指定一个细小的边框。可以把它看作是在Photoshop中为图像添加笔划。我将如何做到这一点?我正在使用vb.net。如何绘制无边界形式的轮廓?
你可以使用GDI +:
Protected Overrides Sub OnPaintBackground(ByVal e As PaintEventArgs)
MyBase.OnPaintBackground(e)
Dim rect As New Rectangle(0, 0, Me.ClientSize.Width - 1, Me.ClientSize.Height - 1)
e.Graphics.DrawRectangle(Pens.Black, rect)
End Sub
(可以替换任何Pen
为Pens.Black
,当然)。
完美的作品。对此,我真的非常感激。 – user1632018
奇怪的是,我认为唯一的错误是即使表单的背景设置为白色,它也会将背景绘制为背后的任何颜色。当主窗体加载时,启动画面也不会自动关闭。这不是一个问题,因为我可以在主窗体的form_load上手动关闭它。我只是想知道为什么会发生这种情况? – user1632018
@ user1632018:你确定它没有像覆盖'OnPaintBackground'之前那样行事? (关于结束,我的意思是。)至于绘制背后的任何颜色,这是我的错误;请参阅编辑。 – Ryan