vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Schützen Sie Ihre Software vor Software-Piraterie - mit sevLock 1.0 DLL!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB.NET - Ein- und Umsteiger
Invoke funktioniert nicht 
Autor: sv00010
Datum: 09.01.14 17:57

Ich versuche in einem Thread verschiedene Dinge zu machen wie z.B. unter anderem Dateien zu kopieren.
Die Aktualisierung der Oberfläche funktioniert bei mir nicht.
Ich verwende einen System.Threading.Timer, welcher in bestimmten Zeitabständen die Oberfläche aktualisieren soll.
Der Timer-Tick funktioniert auch.
Die Sub welche allerdings mit Invoke aufgerufen werden soll, wird nicht aufgerufen.
Invoke wird ausgeführt, er springt nicht in den Catch-Zweig aber der Breakpoint auf der Routine,
welche von Invoke aufgerufen werden soll, wird niemals aufgerufen.
Ich mache irgendwas falsch. Ich brauche Hilfe



Public Class Form03_COPY
 
        Dim Timer1                  As System.Threading.Timer
 
        Private Delegate Sub Delegate_SetPictureBox1_Thread(ByVal ImageIN As _
          Image)
 
 
    Sub Start_Timer()
 
        Dim autoEvent   As New System.Threading.AutoResetEvent(False)
        Dim TmpCallback As System.Threading.TimerCallback = AddressOf _
          Me.HLP_Timer_Tick
 
        Timer1 = New System.Threading.Timer(TmpCallback, autoEvent, 0, 1000)
 
 
    End Sub
 
    Private Sub HLP_Timer_Tick(ByVal stateInfo As Object)
 
        'Hier später Code rein um Bild auszuwählen
 
        Me.HLP_SetPicture_MASCHINENBILD(Nothing)
    End Sub
 
    Sub Stop_Timer()
 
         Dim strTimer As String = Nothing
 
        'Herausfinden ob Timer überhaupt initialisiert wurde
        Try
            strTimer = Me.Timer1.ToString
        Catch
            goto fastExit
        End Try
 
        Me.Timer1.Dispose
 
fastExit:
    End Sub
 
    Sub HLP_SetPicture_MASCHINENBILD(ByVal ImageIN As Image)
 
        Try
            Me.Invoke(New Delegate_SetPictureBox1_Thread(AddressOf _
              SetPictureBox1_Thread), New Object() {ImageIN})
        Catch
            Dim Breakpoint As Integer = 0
        End Try
 
    End Sub
 
    Sub SetPictureBox1_Thread(ByVal ImageIN As Image)
        Dim Random1         As System.Random = Nothing
        Dim bBuffer(3-1)    As Byte
 
        Random1 = New System.Random()
        Random1.NextBytes(bBuffer)
 
        Me.PictureBox1.BackColor = System.Drawing.Color.FromArgb( bBuffer(0), _
          bBuffer(1), bBuffer(2) )
        Me.PictureBox1.Show()
        Me.PictureBox1.Refresh()
    End Sub
End Class
0
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Invoke funktioniert nicht1.701sv0001009.01.14 17:57
Re: Invoke funktioniert nicht1.194Manfred X09.01.14 18:22
Re: Invoke funktioniert nicht1.100sv0001009.01.14 18:27
Re: Invoke funktioniert nicht1.116Manfred X09.01.14 18:37
Re: Invoke funktioniert nicht1.098sv0001009.01.14 19:07
Re: Invoke funktioniert nicht1.223Manfred X09.01.14 19:18
Re: Invoke funktioniert nicht1.143sv0001009.01.14 20:08
Re: Invoke funktioniert nicht1.207Manfred X09.01.14 20:16
Re: Invoke funktioniert nicht1.145ModeratorDaveS09.01.14 20:33
Re: Invoke funktioniert nicht1.135Manfred X09.01.14 20:38

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2024 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel