mkhosh
چهارشنبه 18 شهریور 1388, 18:39 عصر
من برنامه ای نوشته ام که می توان توسط آن عکس صفحه ی desktop را تغییر داد.
اما پس از انتخاب عکس نمی توانم آن را بر روی desktop بیندازم. می دانم که باید از api استفاده کنم، ولی نمی دانم چه طوری!!!!!!!!
لطفا من را راهنمایی کنید.
متشکرم.
butterfly8528
پنج شنبه 19 شهریور 1388, 00:19 صبح
سلام دوست عزیز .
ابتدا رفرنس Microsoft Scripting Runtime رو به پروژه تون اضافه کنید بعد از کد های زیر استفاده کنید :
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
Private Const SPI_SETDESKWALLPAPER = 20
Private Sub ChangeWallpaper(PicAdrs As String)
Dim fsoType As New Scripting.FileSystemObject
Dim OtherPictures As StdPicture
Dim strNewAdrs As String
If Dir(PicAdrs) <> "" Then
Select Case UCase(fsoType.GetExtensionName(PicAdrs))
Case Is = "JPG", "GIF"
Set OtherPictures = LoadPicture(PicAdrs)
strNewAdrs = fsoType.GetParentFolderName(PicAdrs) & "\" & fsoType.GetBaseName(PicAdrs) & ".bmp"
SavePicture OtherPictures, strNewAdrs
SystemParametersInfo SPI_SETDESKWALLPAPER, 0, strNewAdrs, 0
Case Is = "BMP"
SystemParametersInfo SPI_SETDESKWALLPAPER, 0, PicAdrs, 0
Case Else
MsgBox "The File Type Is Invalid. Please Select A Picture.", vbCritical + vbOKOnly, "Error"
End Select
Else
MsgBox "Cant Find This Picture: """ & PicAdrs & """", vbCritical + vbOKOnly, "Error"
End If
End Sub
' example
Private Sub Command1_Click()
ChangeWallpaper ("d:\a.jpg")
End Sub
موفق باشید .
mkhosh
پنج شنبه 19 شهریور 1388, 16:08 عصر
از کد های داده شده استفاده کردم. واقعاً عالی بود.
متشکرم از کمکتون.:چشمک:
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.