Avatar billede w13 Novice
05. juli 2002 - 23:33 Der er 8 kommentarer og
1 løsning

Tilfældigt billede...

Hvad skal man gøre, hvis man har f.eks. 5 billeder på sit computerskrivebord, som måske kunne hedde: Billed1, Billed2, Billed3, o.s.v. hvoraf man vil have sit program til at vælge et tilfældigt og gemme det i en bestemt fil.

Det programmet skal gøre er, at det, når man starter computeren op, skal vise et tilfældigt billede på skrivebordet, så man ikke skal vælge det manuelt...

Hilsen (næsten-)nybegynderen W13!
Avatar billede jensb Nybegynder
05. juli 2002 - 23:47 #1
Avatar billede w13 Novice
05. juli 2002 - 23:48 #2
Forresten... Billedet skal vises som BAGGRUND og ikke bare ligge der som fil!
Avatar billede w13 Novice
05. juli 2002 - 23:50 #3
Tak "jensb", men jeg kunne så godt tænke mig at lave mit eget... :-)
Avatar billede jensb Nybegynder
05. juli 2002 - 23:51 #4
Nårh ups...jeg havde ikke lige set at det var den kategori jeg var kommet ind i.
Avatar billede w13 Novice
05. juli 2002 - 23:53 #5
:-)
Avatar billede driis Nybegynder
06. juli 2002 - 00:08 #6
Under declarations:
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

Så sætter du Windoes desktop således:
SystemParametersInfo 20, 0, WallFile, &H1

Her er WallFile en string, som indeholder sti og filnavn på baggrundsbilledet.
Avatar billede w13 Novice
06. juli 2002 - 00:17 #7
Beklager, "Driis", men jeg er ikke så god til den slags, så jeg forstår det desværre ikke!!!
Avatar billede tjacob Juniormester
06. juli 2002 - 17:57 #8
Du kan bruge driis' forslag således:

Lav et projekt der kun indeholder et modul (ingen form).
Indsæt følgende kode i modulet:

Option Explicit

Private Declare Function SystemParametersInfo Lib "user32" Alias _
    "SystemParametersInfoA" (ByVal uAction As Long, ByVal uParam As Long, _
    ByVal lpvParam As String, ByVal fuWinIni As Long) As Long

Sub Main()
    Dim WallFile As String, RetVal As Long, PicNr As Integer
    Randomize
    PicNr = Int(Rnd * 5) + 1
    WallFile = App.Path & "\pic" & PicNr & ".bmp"
    RetVal = SystemParametersInfo(20, 0, WallFile, &H1)
End Sub

-Dette kompilerer du til en exe-fil.

Lav nu 5 baggrundsbilleder, der hedder pic1.bmp til pic5.bmp, og læg dem i samme mappe som exe-filen. Nu vil dit baggrundsbillede skifte hver gang du kører programmet. (Du kan være "uheldig" og få det samme 2 gange i træk).
-Jeg kunne KUN få det til at fungere med bmp billeder.(?)

Du kunne så oprette en genvej til din exe-fil i "start"-mappen i startmenuen:
Programmer/Start.

Så vil du automatisk få skiftet hver gang du starter Windows.

/tjacob
Avatar billede tjacob Juniormester
06. juli 2002 - 18:39 #9
Det var jo driis der kom med API-kaldet, så jeg synes han skal have halvdelen.

driis se her: http://www.eksperten.dk/spm/233086

/tjacob
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester