.
oui j'y ai penser. et bien moi mon but c'est de faire un logiciel qui change selon une liste précédament crée, de fond d'ecrant a chaque démarrage de l'ordinateur donc voici ou j'en suis pour l'instant
Code : Tout sélectionner
Enumeration
#Window_0
EndEnumeration
;- Gadget Constants
Enumeration
#Text_0
#Frame3D_0
#Frame3D_1
#Frame3D_2
#Frame3D_3
#Listview_0
#Button_0
#Button_1
#Button_2
#save
EndEnumeration
;- Fonts
Global FontID1
FontID1 = LoadFont(1, "Comic Sans MS", 10, #PB_Font_Bold)
Procedure RemoveGadget()
i = 0
Repeat
If GetGadgetItemState(#Listview_0, i) & #PB_ListIcon_Checked ; Si l'item est marqué
RemoveGadgetItem(#Listview_0,i); on le retire
ProcedureReturn RemoveGadget(); on rappelle la procedure
Else
i+1
EndIf
Until i >= CountGadgetItems(#Listview_0) Or CountGadgetItems(#Listview_0) = 0
EndProcedure
Procedure SetWallpaper(FileName.s, Style.s)
; style = 0 : centrer
; style = 2 : étirer
RegOpenKeyEx_(#HKEY_CURRENT_USER, "Control Panel\Desktop\", #Null, #KEY_ALL_ACCESS, @hKey)
RegSetValueEx_(hKey, "WallpaperStyle", #Null, #REG_SZ, @Style, Len(Style) + 1 )
Style = "0"
RegSetValueEx_(hKey, "TileWallpaper", #Null, #REG_SZ, @Style, Len(Style) + 1 )
SystemParametersInfo_(#SPI_SETDESKWALLPAPER, 0, FileName, #SPIF_UPDATEINIFILE | #SPIF_SENDWININICHANGE)
EndProcedure
If OpenWindow(#Window_0, 216, 0, 600, 300, "Auto Desktop", #PB_Window_SystemMenu | #PB_Window_MinimizeGadget | #PB_Window_TitleBar | #PB_Window_ScreenCentered )
If CreateGadgetList(WindowID(#Window_0))
TextGadget(#Text_0, 15, 5, 570, 20, "Changer de font d'ecrant automatiquement ? La solution est sous votre nez ;)", #PB_Text_Center)
SetGadgetFont(#Text_0, FontID1)
Frame3DGadget(#Frame3D_0, 10, 40, 120, 55, "1. ouvrir les images")
Frame3DGadget(#Frame3D_1, 235, 40, 120, 55, "2. enregistrer le travail")
Frame3DGadget(#Frame3D_2, 10, 105, 575, 180, "listes d'images")
Frame3DGadget(#Frame3D_3, 465, 40, 120, 55, "3. suppression")
ListIconGadget(#Listview_0, 20, 125, 555, 150, "nom de l'image", 551, #PB_ListIcon_GridLines|#PB_ListIcon_CheckBoxes)
ButtonGadget(#Button_0, 20, 60, 100, 25, "ouvrir")
ButtonGadget(#Button_1, 245, 60, 100, 25, "enregistrer")
ButtonGadget(#Button_2, 475, 60, 100, 25, "supprimer")
EndIf
EndIf
Repeat
EventID = WaitWindowEvent()
If EventID = #PB_Event_Gadget
Select EventGadget()
Case #Button_0
NomFichier$ = OpenFileRequester("ouvrir images", "","image bitmap (bmp)|*.bmp", 0, #PB_Requester_MultiSelection)
While NomFichier$
res = CountGadgetItems(#Listview_0)
Resultat$ = Str(res)
AddGadgetItem(#Listview_0, Val(Resultat$), NomFichier$)
NomFichier$ = NextSelectedFileName()
Wend
Case #Button_1
nb$ = Str(CountGadgetItems(#Listview_0))
NomFichier1$ = SaveFileRequester("enregistrer sous", "","ini|*.ini", 0)
CreatePreferences(NomFichier1$+".ini")
For a = 0 To Val(nb$)-1
nb1$ = Str(a)
WritePreferenceString(Str(a), GetGadgetItemText(#Listview_0, Val(nb1$), 0))
Next
Case #Button_2
RemoveGadget()
EndSelect
EndIf
Until EventID = #PB_Event_CloseWindow
il me reste a voir comment choisir aléatoirement un numero de la liste crée et de l'ouvrir.