请大家一定帮忙,帮我做到VB题,我很急。这道题很简单!

元明 2000-12-05 08:50:00
在VB中用paintpicture的方法给windows系统平铺一张墙纸,写出具体步骤和程序清单。请大家从速恢复!!!!
...全文
201 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
wanvb 2000-12-06
  • 打赏
  • 举报
回复
对不起
重复了
wanvb 2000-12-06
  • 打赏
  • 举报
回复
此一问题需调用 SystemParametersInfo API 函数,细节如下:

1. API 的声明:

Const SPI_SETDESKWALLPAPER = 20
Const SPIF_UPDATEINIFILE = &H1
Private Declare Function SystemParametersInfo Lib "user32" Alias "SystemParametersInfoA" (ByVal uAction As Long, ByVal uParam As Long, ByVal lpvParam As Any, ByVal fuWinIni As Long) As Long

注:如果以上的声明放在「一般模块」底下, 应在 Const 之前加上 Public 保留字, 并且将 Private 保留字去掉。

2. 程序范例:

Call SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, BMP图档名称, SPIF_UPDATEINIFILE)

例如:

' 1. 将桌面图片设定成 c:\windows\setup.bmp
Call SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, "c:\windows\setup.bmp", SPIF_UPDATEINIFILE)

' 2. 将桌面图片清掉
Call SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, "", SPIF_UPDATEINIFILE)

程序如下:

Call SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, BMP图档名称, SPIF_UPDATEINIFILE)

例如:

' 1. 将桌面图片设定成 c:\windows\setup.bmp
Call SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, "c:\windows\setup.bmp", SPIF_UPDATEINIFILE)

' 2. 将桌面图片清掉
Call SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, "", SPIF_UPDATEINIFILE)

但以上程序设定图片之后, 必须等到下次 Windows 重新启动时才生效, 如果希望设定之后立刻生效,则程序须修改如下:

Const SPIF_SENDWININICHANGE = &H2

Call SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, "c:\windows\setup.bmp", SPIF_UPDATEINIFILE + SPIF_SENDWININICHANGE )

此外希望只有本次使用 Windows 时改变桌面图片(下次开机时还原原状), 则程序如下:

Call SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, "c:\windows\setup.bmp", SPIF_SENDWININICHANGE ) ' 去掉 SPIF_UPDATEINIFILE



如何在DOS程序结束执行时,自动将其关闭?

在 VB 程序中启动 DOS 程序(或指令)的方法是:

Shell "DOS可执行文件名", vbNormalFocus

例如:

Shell "Xcopy c:\temp\*.* d:\temp\*.*", vbNormalFocus

但是当以上的 Xcopy 程序结束执行时, 却会残留着 DOS 窗口没有被关闭,如果想要让 DOS 程序结束执行时, DOS 窗口自动被关闭, 则应该使用以下方法来启动 DOS 程序:

Shell "Command.com /C DOS可执行文件名", vbNormalFocus

例如:

Shell "Command.com /C Xcopy c:\temp\*.* d:\temp\*.*", vbNormalFocus



wanvb 2000-12-06
  • 打赏
  • 举报
回复
此一问题需调用 SystemParametersInfo API 函数,细节如下:

1. API 的声明:

Const SPI_SETDESKWALLPAPER = 20
Const SPIF_UPDATEINIFILE = &H1
Private Declare Function SystemParametersInfo Lib "user32" Alias "SystemParametersInfoA" (ByVal uAction As Long, ByVal uParam As Long, ByVal lpvParam As Any, ByVal fuWinIni As Long) As Long

注:如果以上的声明放在「一般模块」底下, 应在 Const 之前加上 Public 保留字, 并且将 Private 保留字去掉。

2. 程序范例:

Call SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, BMP图档名称, SPIF_UPDATEINIFILE)

例如:

' 1. 将桌面图片设定成 c:\windows\setup.bmp
Call SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, "c:\windows\setup.bmp", SPIF_UPDATEINIFILE)

' 2. 将桌面图片清掉
Call SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, "", SPIF_UPDATEINIFILE)

程序如下:

Call SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, BMP图档名称, SPIF_UPDATEINIFILE)

例如:

' 1. 将桌面图片设定成 c:\windows\setup.bmp
Call SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, "c:\windows\setup.bmp", SPIF_UPDATEINIFILE)

' 2. 将桌面图片清掉
Call SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, "", SPIF_UPDATEINIFILE)

但以上程序设定图片之后, 必须等到下次 Windows 重新启动时才生效, 如果希望设定之后立刻生效,则程序须修改如下:

Const SPIF_SENDWININICHANGE = &H2

Call SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, "c:\windows\setup.bmp", SPIF_UPDATEINIFILE + SPIF_SENDWININICHANGE )

此外希望只有本次使用 Windows 时改变桌面图片(下次开机时还原原状), 则程序如下:

Call SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, "c:\windows\setup.bmp", SPIF_SENDWININICHANGE ) ' 去掉 SPIF_UPDATEINIFILE



如何在DOS程序结束执行时,自动将其关闭?

在 VB 程序中启动 DOS 程序(或指令)的方法是:

Shell "DOS可执行文件名", vbNormalFocus

例如:

Shell "Xcopy c:\temp\*.* d:\temp\*.*", vbNormalFocus

但是当以上的 Xcopy 程序结束执行时, 却会残留着 DOS 窗口没有被关闭,如果想要让 DOS 程序结束执行时, DOS 窗口自动被关闭, 则应该使用以下方法来启动 DOS 程序:

Shell "Command.com /C DOS可执行文件名", vbNormalFocus

例如:

Shell "Command.com /C Xcopy c:\temp\*.* d:\temp\*.*", vbNormalFocus



Jujus 2000-12-06
  • 打赏
  • 举报
回复
没看大懂,是要画一张壁纸还是要换一张壁纸??
我知道换壁纸用systemparameterinfo可以实现
phf 2000-12-05
  • 打赏
  • 举报
回复
guang zhu
y1g1y1 2000-12-05
  • 打赏
  • 举报
回复
我有一个程序的,一下子找不到了.

7,785

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧