Hallo
In meinen Programm befinden sich zwei Formen.1 Form=CATCH_Alarm,2 Form=CATCH_Bilder.
In CATCH_Alarm laufen die Bilder aus einem Ordner von Links nach Rechts in einer PitureBox durch.Ich kann den Abstand(400),Höhe(300) und Breite(412) selbst bestimmen.
In CATCH_Bilder wird das Bild das gerade in CATCH_Alarm durch läuft,auf die Grösse 640x480 gestrecht und angezeigt.
Wenn ich aber in CATCH_Alarm den Abstand oder Breite Ändere,laufen die Bilder in CATCH_Bilder schneller oder langsammer durch.
Ich habe versucht mit CATCH_Bilder.PaintPicture LoadPicture(File1.path & "\" & File1.List(Z2)), 0, 0, Breite, Hoehe das Aktuelle Bild zu Übergeben,damit alles gleich läuft,
weil bei einem Alarm das Bild von CATCH_Bilder gespeichert wird und es das gleiche Bild sein muss was gerade in CATCH_Alarm durch läuft.Ich bekomme aber immer die Fehler Meldung Ungültiges Bild in CATCH_Bilder
.PaintPicture .Picture, 0, 0, .ScaleWidth, .ScaleHeight. und
.PaintPicture Image1.Picture, 0, 0, .ScaleWidth, .ScaleHeight
Kann mir vieleicht jemand Helfen ,wo ich den Fehler mache.
Eigentlich möchte ich auch in CATCH_Bilder den durchlauf des Bildes weg nehmen ,weil eigentlich nur das Bild Angezeigt werden muss was in CATCH_Alarm gerade geladen wird.
Ich hoffe das mir jemand Helfen kann und das was ich geschrieben habe ,auch zu verstehen ist
Hadinius
In meinen Programm befinden sich zwei Formen.1 Form=CATCH_Alarm,2 Form=CATCH_Bilder.
In CATCH_Alarm laufen die Bilder aus einem Ordner von Links nach Rechts in einer PitureBox durch.Ich kann den Abstand(400),Höhe(300) und Breite(412) selbst bestimmen.
In CATCH_Bilder wird das Bild das gerade in CATCH_Alarm durch läuft,auf die Grösse 640x480 gestrecht und angezeigt.
Wenn ich aber in CATCH_Alarm den Abstand oder Breite Ändere,laufen die Bilder in CATCH_Bilder schneller oder langsammer durch.
Ich habe versucht mit CATCH_Bilder.PaintPicture LoadPicture(File1.path & "\" & File1.List(Z2)), 0, 0, Breite, Hoehe das Aktuelle Bild zu Übergeben,damit alles gleich läuft,
weil bei einem Alarm das Bild von CATCH_Bilder gespeichert wird und es das gleiche Bild sein muss was gerade in CATCH_Alarm durch läuft.Ich bekomme aber immer die Fehler Meldung Ungültiges Bild in CATCH_Bilder
.PaintPicture .Picture, 0, 0, .ScaleWidth, .ScaleHeight. und
.PaintPicture Image1.Picture, 0, 0, .ScaleWidth, .ScaleHeight
Kann mir vieleicht jemand Helfen ,wo ich den Fehler mache.
Eigentlich möchte ich auch in CATCH_Bilder den durchlauf des Bildes weg nehmen ,weil eigentlich nur das Bild Angezeigt werden muss was in CATCH_Alarm gerade geladen wird.
Ich hoffe das mir jemand Helfen kann und das was ich geschrieben habe ,auch zu verstehen ist
Hadinius
Brainfuck-Quellcode
- CATCH_Alarm=
- Public Sub Timer1_Timer()
- Me.lblStopuhr.Caption = Format$(Now - mdatStartzeit, "hh:mm:ss")
- If Text2.Text = "" Then
- Text2.Text = 2
- End If
- Dim i&
- 'Dim TeilBreite&, TeilHoehe&
- Breite = CInt(Text4.Text) ' Bildbreite
- Hoehe = CInt(Text5.Text) ' Bildhöhe
- Abstand = CInt(Text6.Text) 'Abstand zwischen den Bildern
- Speed = CInt(Text2.Text) 'Geschwindigkeit
- CATCH_Bilder.Text2.Text = Speed
- With Picture1
- For i = 0 To Speed - 1
- Z1 = Z1 - 1
- If Z1 = 0 Then
- Z1 = Breite + Abstand
- On Error GoTo 0
- .PaintPicture LoadPicture(File1.path & "\" & File1.List(Z2)), 0, 0, Breite, Hoehe
- [b]CATCH_Bilder.Picture2.Picture = LoadPicture(File1.path & "\" & File1.List(Z2))[/b]
- '------------------------------------------------------------------------------------------------------------------------------------
- Z2 = (Z2 + 1) Mod File1.ListCount
- End If
- Call BitBlt(.hdc, 1, 0, .ScaleWidth + 1, Hoehe + 400, .hdc, 0, 0, vbSrcCopy)
- Picture1.Line (0, -10)-(0, Hoehe), .BackColor
- Next i
- End With
- If Z2 > 0 Then
- Text7.Text = Z2 + 1
- End If
- Text1.Text = Z2
- Text8.Text = File1.path
- Text9.Text = File1.List(Z2)
- If Text1.Text = 0 Then
- Timer1.Enabled = False
- Z2 = 0
- Text3.Text = Text1.Text
- '------------------------------------------------------------------
- Z1 = 1
- '------------------------------------------------------------------
- End If
- End Sub
- CATCH_Bilder=
- Public Sub Timer1_Timer()
- Me.lblStopuhr.Caption = Format$(Now - mdatStartzeit, "hh:mm:ss")
- If Text2.Text = "" Then
- 'Text2.Text = 2
- End If
- Dim i&
- Dim TeilBreite&, TeilHoehe&
- Breite = CInt(Text4.Text) ' Bildbreite
- Hoehe = CInt(Text5.Text) ' Bildhöhe
- Abstand = CInt(Text6.Text) 'Abstand zwischen den Bildern
- Speed = CInt(Text2.Text) 'Geschwindigkeit
- With Picture1
- 'Speed = 15
- For i = 0 To Speed - 1
- Z1 = Z1 - 1
- If Z1 = 0 Then
- Z1 = Breite + Abstand
- On Error GoTo 0
- '--------------Picture2.Picture = LoadPicture(File1.path & "\" & File1.List(Z2))
- '------------------Bild-Strechen--------------------------------------------
- With Picture2
- .AutoRedraw = True
- .Cls
- [b].PaintPicture .Picture, 0, 0, .ScaleWidth, .ScaleHeight[/b]
- .AutoRedraw = False
- End With
- Me.ScaleMode = vbPixels
- With Picture2
- .BorderStyle = vbBSNone
- .ScaleMode = vbPixels
- .Width = 640 ' Breite Pixel
- .Height = 480 ' Höhe Pixel
- .AutoRedraw = True
- '.Cls
- [b].PaintPicture Image1.Picture, 0, 0, .ScaleWidth, .ScaleHeight[/b]
- End With
- '-------------------------------------------------------------------------
- Z2 = (Z2 + 1) Mod File1.ListCount
- End If
- Call BitBlt(.hdc, 1, 0, .ScaleWidth + 1, Hoehe, .hdc, 0, 0, vbSrcCopy)
- Picture1.Line (0, -10)-(0, Hoehe), .BackColor
- Next i
- End With
- If Z2 > 0 Then
- Text7.Text = Z2 + 1
- End If
- Text1.Text = Z2
- 'Text8.Text = File1.path
- 'Text9.Text = File1.List(Z2)
- If Text1.Text = 0 Then
- Timer1.Enabled = False
- Z2 = 0
- Text3.Text = Text1.Text
- '------------------------------------------------------------------
- Z1 = 1
- '------------------------------------------------------------------
- End If
- End Sub
Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Hadinius“ ()