vb.net图像黑边 vb怎么设置图片框背景颜色

求大神指点 vb.net 的 BitBlt GDI32 怎么去掉黑边呢?

为什么 BitBlt 第二第三参数是200,这是绘制到位图上的坐标起点,一般是0。如果绘制宽度和坐标起点不能使位图全覆盖上,留出的空白部分自然为黑色的。

网站设计制作过程拒绝使用模板建站;使用PHP+MYSQL原生开发可交付网站源代码;符合网站优化排名的后台管理系统;成都网站建设、网站设计收费合理;免费进行网站备案等企业网站建设一条龙服务.我们是一家持续稳定运营了十多年的创新互联网站建设公司。

假如下面那样,没见有黑边:

hBMP = CreateCompatibleBitmap(hDC, 500,600)

hBMPOld = SelectObject(hMDC, hBMP)

BitBlt(hMDC,0,0, 500, 600, hDC, 0, 0, HCC0020)

hBMP = SelectObject(hMDC, hBMPOld)

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无边框窗口如何做出阴影效果?

调用系统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图像黑边 vb怎么设置图片框背景颜色
本文链接:http://azwzsj.com/article/dohieep.html