Avatar billede hcichosz Praktikant
17. september 2007 - 19:39 Der er 14 kommentarer og
1 løsning

problem med at gå frem og tilbage i billeder [VB6]

Hej

jeg har en form hvor jeg har en Picture box og en timer plus en start knap det virker fint

jeg vil så gerne have lavet sådan at man kan gå frem og tilbage i billederne, men jeg kan ikke rigtig få det til at funger,
min kode er nedenfor det er Command4 og Command3 det er galt med.

hvordan fixer man den.

Timer1 = True
End Sub

Private Sub Command2_Click()
Shell "explorer jubi\", vbNormalFocus

End Sub

Private Sub Command3_Click()
iCount = iCount + 1
    If iCount > 10 Then
        iCount = 1
    End If
    Picture1.Picture = LoadPicture("jubi " & "(" & iCount & ")" & ".jpg").Picture
End Sub

Private Sub Command4_Click()
iCount = iCount - 1
    If iCount <= 0 Then
        iCount = 1
    End If
    Picture1.Picture = LoadPicture("jubi " & "(" & iCount & ")" & ".jpg").Picture
End Sub

Private Sub Form_Load()

End Sub

Sub Timer1_Timer()
    Static iCount As Integer

    iCount = iCount + 1
    Picture1.Picture = LoadPicture("jubi " & "(" & iCount & ")" & ".jpg")
    If iCount >= 10 Then
        iCount = 0
    End If

End Sub
Avatar billede nielle Nybegynder
17. september 2007 - 19:58 #1
Hvad hedder dine billeder?

jubi (0).jpg
jubi (1).jpg
...
jubi (9).jpg

eller:

jubi (1).jpg
jubi (2).jpg
...
jubi (10).jpg

eller noget helt andet?
Avatar billede hcichosz Praktikant
17. september 2007 - 20:03 #2
Jubi (1).jpg
Avatar billede hcichosz Praktikant
17. september 2007 - 20:04 #3
Ja og der efter jubi (2) ........ frem til jubi (10).jpg
Avatar billede nielle Nybegynder
17. september 2007 - 20:07 #4
Så må det være sådan:

    Timer1 = True
End Sub

Private Sub Command2_Click()
    Shell "explorer jubi\", vbNormalFocus
End Sub

Private Sub Command3_Click()
    iCount = iCount + 1
    If iCount > 10 Then
        iCount = 1
    End If
    Picture1.Picture = LoadPicture("jubi (" & iCount & ").jpg").Picture
End Sub

Private Sub Command4_Click()
    iCount = iCount - 1
    If iCount < 1 Then
        iCount = 10
    End If
    Picture1.Picture = LoadPicture("jubi (" & iCount & ").jpg").Picture
End Sub

Private Sub Form_Load()
End Sub

Sub Timer1_Timer()
    Static iCount As Integer

    iCount = iCount + 1
    If iCount > 10 Then
        iCount = 1
    End If
    Picture1.Picture = LoadPicture("jubi (" & iCount & ").jpg")
End Sub
Avatar billede hcichosz Praktikant
17. september 2007 - 20:08 #5
og se bort fra
Private Sub Command2_Click()
Shell "explorer jubi\", vbNormalFocus
det er bare en extra mappe hvor billederne ligger i en højre opløsning
Avatar billede nielle Nybegynder
17. september 2007 - 20:10 #6
...

Sådan:

    Timer1 = True
End Sub

Private Sub Command2_Click()
    Shell "explorer jubi\", vbNormalFocus
End Sub

Private Sub Command3_Click()
    iCount = iCount + 1
    If iCount > 10 Then
        iCount = 1
    End If
    Picture1.Picture = LoadPicture("jubi (" & iCount & ").jpg")
End Sub

Private Sub Command4_Click()
    iCount = iCount - 1
    If iCount < 1 Then
        iCount = 10
    End If
    Picture1.Picture = LoadPicture("jubi (" & iCount & ").jpg")
End Sub

Private Sub Form_Load()
End Sub

Sub Timer1_Timer()
    Static iCount As Integer

    iCount = iCount + 1
    If iCount > 10 Then
        iCount = 1
    End If
    Picture1.Picture = LoadPicture("jubi (" & iCount & ").jpg")
End Sub
Avatar billede hcichosz Praktikant
17. september 2007 - 20:26 #7
Hej
timeren virker stadig, men jeg kan kun bladre mellem jubi (1).jpg og jubi (10).jpg via Command3 og 4
de andre bileder finder den ikke
Avatar billede nielle Nybegynder
17. september 2007 - 20:34 #8
Prøv at flytte din definition af iCount ude af Timer1_Timer().
Avatar billede hcichosz Praktikant
17. september 2007 - 20:46 #9
hej
selv om jeg helt fjerner alt der har med timere at gøre
vil den kun gå fra billede jubi (1) og springer helt til jubi (10)
det samme tilbage
Avatar billede nielle Nybegynder
17. september 2007 - 20:51 #10
Det lyder meget underligt. Prøv at indsætte en MsgBox og udskriv hvad der sker med værdien af iCount undervejs.
Avatar billede hcichosz Praktikant
17. september 2007 - 21:48 #11
Nu overstiger vi min lille kunden ;0) hvordan ?
Avatar billede hcichosz Praktikant
17. september 2007 - 21:53 #12
Hej
Jeg havde bare glemt: Dim iCount As Integer
Mange tak for hjælpen smid et svar ;0)
Avatar billede hcichosz Praktikant
17. september 2007 - 21:55 #13
Bare lige en lille ting jeg kan godt insætte en MsgBox men hvor dan får jeg den til at udskrive hvad der sker med værdien af icount ?
det vil jeg gerne vide
på forhånd Tak..
Avatar billede nielle Nybegynder
17. september 2007 - 22:05 #14
Sådan:

MsgBox("iCount: " & iCount)
Avatar billede nielle Nybegynder
17. september 2007 - 22:06 #15
D´Svar :^)
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