Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
C# / VB.NET - [VB.NET] Cambiare automaticamente sfondo desktop Windows...
Forum - C# / VB.NET - [VB.NET] Cambiare automaticamente sfondo desktop Windows... - Pagina 2

Pagine: [ 1 2 3 4 ] Precedente | Prossimo
Avatar
LoganShile (Ex-Member)
Expert


Messaggi: 350
Iscritto: 27/03/2009

Segnala al moderatore
Postato alle 21:10
Sabato, 20/06/2009
ho provato così...

Public Class Form1
    <dllImport("user32.dll", EntryPoint:="SystemParametersInfo")> _
Public Shared Function SystemParametersInfo(ByVal uiAction As UInteger, ByVal uiParam As UInteger, ByVal pvParam As UInteger, ByVal fWinIni As UInteger) As Boolean
    End Function
    Private Declare Function SystemParametersInfo Lib "user32" Alias "SystemParametersInfoA" (ByVal uAction As Long, ByVal uParam As Long, ByVal lpvParam As Random, ByVal fuWinIni As Long) As Long
    Private Const SPI_SETDESKWALLPAPER = 20
    Private Const SPIF_UPDATEINIFILE = &H1
    Private Const NOMESFONDO = "C:\Windows\Web\Wallpaper\img9.jpg"
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Dim PATHSFONDO As String
        PATHSFONDO = "C:\Windows\Web\Wallpaper\"
    End Sub
End Class


Se non và cosi non so come fare:(

PM Quote
Avatar
Jeremy (Normal User)
Pro


Messaggi: 134
Iscritto: 08/02/2009

Segnala al moderatore
Postato alle 21:27
Sabato, 20/06/2009
Ciao
Dai un occhio qui:
http://blogs.dotnethell.it/sandro/Cambiare-lo-sfondo-del-D ...

Facci sapere...
Ciao

PM Quote
Avatar
LoganShile (Ex-Member)
Expert


Messaggi: 350
Iscritto: 27/03/2009

Segnala al moderatore
Postato alle 21:42
Sabato, 20/06/2009
ok...ci sono
C'è solo un problema...Adesso io cambio lo sfondo cliccando su un button1, ma vorrei cambiarlo tramite un Timer ogni 60 secondi (60.000 millisecondi) ma non so cosa ne come fare...

Ultima modifica effettuata da LoganShile il 20/06/2009 alle 21:42
PM Quote
Avatar
marco_grillo (Member)
Rookie


Messaggi: 33
Iscritto: 22/04/2009

Segnala al moderatore
Postato alle 21:43
Sabato, 20/06/2009
Semplice...
Ipotizziano che nel form ci sia una textbox per il percorso del file ed un bottone per cambiare il desktop:

Codice sorgente - presumibilmente VB.NET

  1. Private Declare Function SystemParametersInfo Lib "user32" Alias "SystemParametersInfoA" (ByVal uAction As Integer, ByVal uParam As Integer, ByVal lpvParam As String, ByVal fuWinIni As Integer) As Integer
  2.     Const SPI_SETDESKWALLPAPER = 20
  3.     Const SPIF_UPDATEINIFILE = &H1
  4.     Public filename As String
  5.  
  6.     Private Sub TextBox1_MouseDoubleClick(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles TextBox1.MouseDoubleClick
  7.         OpenFileDialog1.ShowDialog()
  8.         TextBox1.Text = OpenFileDialog1.FileName
  9.     End Sub
  10.  
  11.     Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
  12.         SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, TextBox1.Text, SPIF_UPDATEINIFILE)
  13.     End Sub



Basta cliccare 2 volte la textbox per aprire il menù e per scegliere l'immagine poi basta cliccare sul bottone ed il gioco è fatto ;)

PM Quote
Avatar
Jeremy (Normal User)
Pro


Messaggi: 134
Iscritto: 08/02/2009

Segnala al moderatore
Postato alle 21:58
Sabato, 20/06/2009
Testo quotato

Postato originariamente da LoganShile:

ok...ci sono
C'è solo un problema...Adesso io cambio lo sfondo cliccando su un button1, ma vorrei cambiarlo tramite un Timer ogni 60 secondi (60.000 millisecondi) ma non so cosa ne come fare...



Dai su .... un pò di fantasia .... inserisci un timer nel form ..... e nella gestione dell'evento Tick ...... dai che ce la puoi fare ....
:pat::pat:


PM Quote
Avatar
LoganShile (Ex-Member)
Expert


Messaggi: 350
Iscritto: 27/03/2009

Segnala al moderatore
Postato alle 22:28
Sabato, 20/06/2009
Allora, il codice eccolo, completo e funzionante ma non come speravo, riscritto da 0 e modificato un pò:

Public Class Form1
    Private Declare Function SystemParametersInfo Lib "user32" Alias "SystemParametersInfoA" (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
    Public filename As String
    Private Sub TextBox1_MouseDoubleClick(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles TextBox1.MouseDoubleClick
        Text = Visible = False
        OpenFileDialog1.ShowDialog()
        TextBox1.Text = OpenFileDialog1.FileName
    End Sub
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, TextBox1.Text, SPIF_UPDATEINIFILE)
    End Sub
End Class


Ho provato a mettere il Timer e nella proprietà Interval a mettere 5000 ( 5 secondi ), ma non mi cambia lo sfondo...Per adesso non fa altro che cambiarlo ad ogni evento click del Button1...:d

PM Quote
Avatar
Jeremy (Normal User)
Pro


Messaggi: 134
Iscritto: 08/02/2009

Segnala al moderatore
Postato alle 23:10
Sabato, 20/06/2009
Ciao ...nel progettino allegato, ho modificato il codice copiato dall'articolo che ti ho linkato qualche post più su .... cambia il percorso delle immagini, premi su start ed aspetta una decina di secondi.

Ciao


Jeremy ha allegato un file: ChangeWallPaperWindows.zip (105242 bytes)
Clicca qui per scaricare il file
PM Quote
Avatar
LoganShile (Ex-Member)
Expert


Messaggi: 350
Iscritto: 27/03/2009

Segnala al moderatore
Postato alle 23:11
Sabato, 20/06/2009
Volendo posso copiare il sorgente del timer per usarlo io  vero ???

PM Quote
Pagine: [ 1 2 3 4 ] Precedente | Prossimo