vb.net边框阴影 vb阴影效果

VB.NET里面要使无边框的窗体有阴影该怎么做调用系统API使窗体下拥有阴影效果
using System.Runtime.InteropServices;
然后再窗口类的随便哪个地方加上:
const int CS_DROPSHADOW = 0x20000;
const int GCL_STYLE = (-26);
//声明Win32 API
[DllImport("user32.dll", CharSet = CharSet.Auto)]
public static extern int SetClassLong(IntPtr hwnd,int nIndex,int dwNewLong);
[DllImport("user32.dll", CharSet = CharSet.Auto)]
public static extern int GetClassLong(IntPtr hwnd, int nIndex);
最后在窗体的构造函数中加上:
SetClassLong(this.Handle, GCL_STYLE, GetClassLong(this.Handle, GCL_STYLE) | CS_DROPSHADOW);
vb.net控件的BorderStyle设置为FixedSingle会出现黑线边框,可以更改他的颜色吗 比如改成红色线边框要么重写这个控件的 OnPaint 事件,判断 BorderStyle 属性为 FixedSingle 的时候自绘其他颜色 。
要么不重写,把 BorderStyle 设为 None,直接在这个控件的 Paint 事件里自绘边框,例如:
Private Sub Label1_Paint(sender As Object, e As PaintEventArgs) Handles Label1.Paint
e.Graphics.DrawRectangle(Pens.Red, New Rectangle(Label1.DisplayRectangle.X, Label1.DisplayRectangle.Y, Label1.DisplayRectangle.Width - 1, Label1.DisplayRectangle.Height - 1))
End Sub
运行效果:
VB.NET窗体阴影vb.net2008
vb.net API 是将除特殊变量(如H20000)vb.net边框阴影的Long都改成Integer
窗体vb.net边框阴影的右侧和下方有阴影
Public Class Form1
Private Const CS_DROPSHADOW = H20000
Private Const GCL_STYLE = (-26)
Private Declare Function GetClassLong Lib "user32" Alias "GetClassLongA" (ByVal hwnd As Integer, ByVal nIndex As Integer) As Integer
Private Declare Function SetClassLong Lib "user32" Alias "SetClassLongA" (ByVal hwnd As Integer, ByVal nIndex As Integer, ByVal dwNewLong As Long) As Integer
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
SetClassLong(Me.Handle, GCL_STYLE, GetClassLong(Me.Handle, GCL_STYLE) Or CS_DROPSHADOW)
End Sub
End Class
Vb.net 窗体四周阴影效果它们的窗体实际上就是你截图出来的大小 , 周围的阴影效果都是自己画出来的 。
Vb.net 无边框窗体如何实现四周阴影? 网上搜到的都是两边阴影的,我需要四周阴影设置全局变量:
Dim drag As Boolean
Dim mousex As Integer
Dim mousey As Integer
假设你想拖动的是Panel1控件,以及此控件上的 Label1(用于显示标题)和PictureBox4(用于显示图标):
Private Sub TitleMove_MouseDown(sender As Object, e As System.Windows.Forms.MouseEventArgs) Handles Panel1.MouseDown, Label1.MouseDown, PictureBox4.MouseDown
drag = True
mousex = Windows.Forms.Cursor.Position.X - Me.Left
mousey = Windows.Forms.Cursor.Position.Y - Me.Top
End Sub
Private Sub TitleMove_MouseMove(sender As Object, e As System.Windows.Forms.MouseEventArgs) Handles Panel1.MouseMove, Label1.MouseMove, PictureBox4.MouseMove
If drag Then
Me.Top = Windows.Forms.Cursor.Position.Y - mousey
Me.Left = Windows.Forms.Cursor.Position.X - mousex
End If
End Sub
Private Sub TitleMove_MouseUp(sender As Object, e As System.Windows.Forms.MouseEventArgs) Handles Panel1.MouseUp, Label1.MouseUp, PictureBox4.MouseUp
drag = False
End Sub
怎么用GDI 使窗体四周都有阴影效果 , 不用WPF , C#或者是vb.net也可以的 注意是四周不是两边的 。求帮忙啊调用API是个好的办法vb.net边框阴影,给vb.net边框阴影你个参考网文:
如果一定要自已用GDI 绘制vb.net边框阴影,很麻烦vb.net边框阴影,比如把窗体设置成无边框,贴图上去,但可能要自已定义事件来响应缺少标题栏后的操作 。等等
【vb.net边框阴影 vb阴影效果】vb.net边框阴影的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于vb阴影效果、vb.net边框阴影的信息别忘了在本站进行查找喔 。

    推荐阅读