AJUDA COM THREAD
mas na thread esta dando erro quando vou adicionala na form usando a thread
se algum souber onde está o erro, estou mandando o exemplo do projeto em anexo
obrigado
No geral você deve usar threads apenas para operações em segundo plano, que não afetam a interface, e não é recomendado desativar o CheckForIllegalCrossThreadCalls já que ele ajuda a evitar que você modifique os controles de outro thread, o que pode causar erros imprevistos, quando você precisa atualizar a interface através de um thread deve-se usar o Invoke do form para garantir que o código que atualiza o form rode no thread dele, sendo que deve-se manter isso o mÃnimo possÃvel, já que se usar muito isso deixaria o processo mais lento que fazer com um thread só.
olha só
Citação:Imports System.Threading
Public Class Form1
Dim asda As PictureBox
Dim asdaa As Thread
Dim kkk As MethodInvoker
Public Delegate Sub qqq()
Public Sub ddd()
Dim asda As New PictureBox
asda.BackColor = Color.CadetBlue
asda.Left = 0
asda.Top = 0
asda.Width = 10
asda.Height = 10
asda.BringToFront()
Dim dds As New qqq(AddressOf eee)
dds.Invoke()
While asda.Left < 100
asda.Left += 1
Thread.Sleep(5)
asda.Refresh()
End While
End Sub
Public Sub eee()
Controls.Add(asda)
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim asda As New Thread(AddressOf ddd)
asda.IsBackground = True
asda.Start()
End Sub
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Control.CheckForIllegalCrossThreadCalls = False
End Sub
End Class
Citação:Public Sub ddd()
Dim asda As New PictureBox
asda.BackColor = Color.CadetBlue
asda.Left = 0
asda.Top = 0
asda.Width = 10
asda.Height = 10
asda.BringToFront()
Controls.Add(asda)
While asda.Left < 100
asda.Left += 1
Thread.Sleep(5)
asda.Refresh()
End While
End Sub
mas eu quero chamar várias imagens ao mesmo tempo, e não adianta roda isso por outro modo sem ser uma thread separada da principal, e se eu iso um invoke ou delegate pra adicionar o (asda) que ela não vai pra form pq ela foi crianda usando
Citação:, ai eu quero se fosse possÃvel me mandar um exemplo de como fazer isso, pq não sei mais como fazerDim asda As New PictureBox
ai preciso de ir criando várias imagens