VBA如何设置窗体form背景 和窗体中的鼠标/光标的外观,设置 mouseicon注意点

勤策365 admin 2025-10-20 13:34:32

1 设置form的背景图 picture

1.1 设置背景图picture的属性

picture picturealignment '试了下默认center居中,还有topleft等4个角对齐选择。picturesizemode '默认是clip截断(原尺寸),zoom 缩放好像是等比例缩放? stretch拉伸pictureTiling '默认是否,置为1后为平铺 (可见平铺是单独的属性)

2 图片在窗体的属性设置和方法

2.1 (窗体属性):图片的对齐方式 : pictureAlignment

我觉得这是窗体属性,只是把图片在窗体内如何对齐放置,和图片无关。

picturealignment默认center居中还有topleft等4个角对齐选择

2.2 (图片属性)图片的尺寸显示方式: pictureSizemode

我觉得这是图片属性,即使只是图片的副本,也是改变了图片本身的大小或比例

图片的方式--option : clip, stretch, zoom是3种方式,可选其1默认是clipclip---------截断:目的是图片保持原尺寸完全不变,如果窗体大则会有空白,如果窗体小则会截断图片只显示一部分zoom------缩放:目的是比例不变形,控制图片宽高比例,缩放是把图片进行等比例缩放,而不在乎图片实际大小。stretch----拉伸:目的是拉伸填满为止,不在乎比例,也不在于实际大小,把图片按窗体的大小进行拉升,不控制图片比例。

clip,可见图标被截断了一部分

zoom 只是绝对尺寸变化,比例还是原图的

stretch 拉伸了

2.3 窗体属性:图片是否平铺到整个窗体:pictureTiling

我觉得这是窗体属性,是设置好显示模式的图片如何充满窗体,和图片无关。

图片的拉升方式--option : clip, stretch, zoom是3种方式,可选其1图片的平铺--------bool: 是/否

clip+Tiling 效果

zoom+tiling 效果

3 mouseicon 鼠标外观

3.1 鼠标相关属性

mouseicon 只有需要自定义时才修改mousepointer 应该可以设置不同的鼠标外观

可以是十字星,加问号,等等各种外观

3.2 自定义鼠标光标外观:VBE设置上的要求

必须同时MouseIcon设置成你要的Ico文件,并且把MousePointer设置为99 Custommousepointer已设置为99,就是 customcustom 是让设计者自定义的意思

3.3 自定义鼠标光标外观:VB对 mouseicon的美术要求

如果不满足下面的要求,设置mouseicon会各种报错对icon有很多美术上的要求---PS不太会用VB要求格式一般是 .ico ,据说不支持 .ani 动画光标格式VB要求图片是24位色的,这个PS里另外为bmp的时候可以设置,其他方式怎么设置我不清除据说图片像素大小需要在48*48以内

4 也可以代码实现,暂时还没弄

object.MouseIcon = LoadPicture(pathname)object.MouseIcon [= picture]

5 美术抠图(百度的)

4.1 VB好像不支持我抠图后的无背景光标,所以例子里还是用的不抠图的,原因还不明,有些问题没解决

4.2 如何抠图?百度的方法之一

4.2.1 适合这种背景色和图像颜色不同的方法

首先,要解锁图片,否则无法修改操作和选择对应的图层有些图片本身就带多个图层,比如图像图层和背景图层,这时候只需要隐藏背景图层就可以操作后经常需要多按按ctrl D快捷键Ctrl+D是取消当前选区选择的

适合这种背景色和图像颜色不同的方法有白色背景的图PS里,选择/色彩范围--选图像,然后取色----再删掉出缺色的背景色这部分。

4.2.2 魔术棒勾边

PS菜单叠加隐藏,需要点击右键才会出魔术棒工具,平时默认叠在 快速选择工具下面选择背景颜色后,按delete,可以删掉边上的颜色也可以反向选择,拷贝图像,新建图片后拷贝过去,隐藏背景就可以了

4.2.3 橡皮擦类---右键选魔术橡皮擦工具

选择魔术橡皮擦点击背景,选择连续,也可以擦除