Classe pour changer le papier peint de windows

Soyez le premier à donner votre avis sur cette source.

Snippet vu 10 345 fois - Téléchargée 30 fois

Contenu du snippet

Ca fait pas grand chose : efface, definit le papier peint de windows (a partir d'un nom de fichier) et recupere la taille de l'ecran.

Si quelqu'un sais comment definir la configuration du wallpaper en mode 'etiré', dite le moi, je l'inserai.

Source / Exemple :


Public Class Windows_Wallpaper
    Private Declare Auto Function SystemParametersInfo Lib "user32.dll" (ByVal uAction As Integer, ByVal uParam As Integer, ByVal lpvParam As String, ByVal fuWinIni As Integer) As Integer
    Const SPI_SETDESKWALLPAPER = 20
    Const SPIF_UPDATEINIFILE = &H1
    Const SPIF_SENDWININICHANGE = &H2
    Private File_Path As String

    Sub New(ByVal _File_Path As String)
        File_Path = _File_Path
    End Sub

    Sub Clear()
        SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, "", SPIF_UPDATEINIFILE Or SPIF_SENDWININICHANGE)
    End Sub

    Sub Update()
        SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, File_Path, SPIF_UPDATEINIFILE Or SPIF_SENDWININICHANGE)
    End Sub

    Function Get_Height() As Integer
        Return Windows.Forms.Screen.PrimaryScreen.WorkingArea.Height()
    End Function

    Function Get_Width() As Integer
        Return Windows.Forms.Screen.PrimaryScreen.WorkingArea.Width()
    End Function
End Class

Conclusion :


Qu'en pensez vous ?

A voir également

Ajouter un commentaire Commentaires
cs_Willi Messages postés 2375 Date d'inscription jeudi 12 juillet 2001 Statut Modérateur Dernière intervention 15 décembre 2018 22
10 sept. 2006 à 14:54
Microsoft.Win32.Registry.CurrentUser.OpenSubKey("Control Panel\Desktop", True).SetValue("TileWallpaper", "0", Microsoft.Win32.RegistryValueKind.String)

Fais de meme pour WallpaperStyle.
doxt Messages postés 15 Date d'inscription mercredi 11 août 2004 Statut Membre Dernière intervention 7 septembre 2009
10 sept. 2006 à 14:08
Comment fait tu ca avec du code ?
cs_Willi Messages postés 2375 Date d'inscription jeudi 12 juillet 2001 Statut Modérateur Dernière intervention 15 décembre 2018 22
10 sept. 2006 à 09:01
Effectivement c'est pas grand chose. Tu aurais pu au moins faire le test sur l'existence du fichier passé au constructeur.

Pour étirer ton wallpaper avant de le définir avec SPI_SETDESKWALLPAPER modifies les 2 valeurs suivantes dans la base de registre.

Sous HKEY_CURRENT_USER\Control Panel\Desktop
Passe la valeur 0 à TileWallpaper et 2 à WallpaperStyle

++

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.