AJUDA VARIOS ITEMS

OWNIMS 15/08/2011 17:40:47
#381767
To tentando fazer o vb atualizar varios buttons ao mesmo tempo e estaria usando arrays
tipo
tem 1 timer que é iniciado no inicio e fica ateh a application fexar
quero saber como fasso assim

se qualquer botao com o nome de slot1 a slot16 tiver a tag [Ô]1[Ô] mudar a imagem para image1
e os que tiverem a tag 2 mudar assim respectivamente para image2

espero que tenha entendido minhas perguntas bestas OO
OWNIMS 15/08/2011 17:57:22
#381775
Eu fiz um exemplo mas tem que ficar definindo todos os slots e vai acaba deixando o projeto lento


Private Sub paralelo_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles paralelo.Tick
Dim espacos(3) As Object
espacos(0) = item1
espacos(1) = item2
espacos(2) = item3
espacos(3) = item4
If espacos(0).tag = [Ô]1[Ô] Then
espacos(0).image = (InventoryDragDrop.My.Resources.Resources.ico1)
End If
If espacos(1).tag = [Ô]1[Ô] Then
espacos(1).image = (InventoryDragDrop.My.Resources.Resources.ico1)
End If
If espacos(2).tag = [Ô]1[Ô] Then
espacos(2).image = (InventoryDragDrop.My.Resources.Resources.ico1)
End If
If espacos(3).tag = [Ô]1[Ô] Then
espacos(3).image = (InventoryDragDrop.My.Resources.Resources.ico1)
End If
If espacos(0).tag = [Ô]2[Ô] Then
espacos(0).image = (InventoryDragDrop.My.Resources.Resources.ico2)
End If
If espacos(1).tag = [Ô]2[Ô] Then
espacos(1).image = (InventoryDragDrop.My.Resources.Resources.ico2)
End If
If espacos(2).tag = [Ô]2[Ô] Then
espacos(2).image = (InventoryDragDrop.My.Resources.Resources.ico2)
End If
If espacos(3).tag = [Ô]2[Ô] Then
espacos(3).image = (InventoryDragDrop.My.Resources.Resources.ico2)
End If
End Sub

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
paralelo.Enabled = True
paralelo.Start()
End Sub

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
item1.Tag = 1

End Sub

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
item1.Tag = 2
End Sub

Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click
item2.Tag = 1
End Sub

Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
item2.Tag = 2
End Sub

funciona assim
click btn1 = item1.tag = 1
click btn2 = item1.tag = 2
click btn3 = item2.tag = 1
click btn4 = item2.tag = 2

e ele troca a imagem quando a tag eh mudada.
mas assim da muito trabalho,teria qe fazer item por item e acabaria deixando o [Ô]jogo[Ô] pesado Oo
ou lerdo

PEGUDO 16/08/2011 07:48:35
#381794
Resposta escolhida
Cara coloca assim no Timer Paralelo

[txt-color=#0000f0]Private Sub[/txt-color] paralelo_Tick([txt-color=#0000f0]ByVal[/txt-color] sender [txt-color=#0000f0]As[/txt-color] System.Object, [txt-color=#0000f0]ByVal[/txt-color] e [txt-color=#0000f0]As[/txt-color] System.EventArgs) [txt-color=#0000f0]Handles[/txt-color] paralelo.Tick  
Timer1.Enabled = [txt-color=#0000f0]False[/txt-color]
[txt-color=#0000f0]For Each[/txt-color] Botao [txt-color=#0000f0]As[/txt-color] Button [txt-color=#0000f0]In Me[/txt-color].Controls.OfType([txt-color=#0000f0]Of[/txt-color] Button)()
[txt-color=#0000f0]If[/txt-color] Botao.Tag = [txt-color=#e80000][Ô]1[Ô][/txt-color] [txt-color=#0000f0]Then[/txt-color]
Botao.Image = [txt-color=#0000f0]My[/txt-color].Resources.Resources.ico1
[txt-color=#0000f0]Else[/txt-color]
Botao.Image = [txt-color=#0000f0]My[/txt-color].Resources.Resources.ico2
[txt-color=#0000f0]End If
Next[/txt-color]
Timer1.Enabled = [txt-color=#0000f0]True
End Sub[/txt-color]
OWNIMS 16/08/2011 14:37:44
#381829
ahh saquei entendi o codigo que vc fez ainda nao testei.
vo testa mas como fasso isso limitado a 16 botoes? pq pelo que percebi no codigo ele iria fazer isso em todos os botoes
^^
ps nao testei ainda essa eh a conclusao que eu acho que deve ser Oo

ps: ja arrumei o codigo pra nao ser em todos os botoes
fico assim
Citação:

Private Sub paralelo_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles paralelo.Tick
paralelo.Enabled = False
For Each Botao As Button In Me.Controls.OfType(Of Button)()
If Botao.Tag = [Ô]1[Ô] Then
Botao.Image = My.Resources.Resources.ico1
ElseIf Botao.Tag = [Ô]2[Ô] Then
Botao.Image = My.Resources.Resources.ico2
Else
Botao.Image = Nothing
End If
Next
paralelo.Enabled = True
End Sub




OBS: uma parte do meu sistema esta pronta Uu


vlw ^^
PEGUDO 17/08/2011 07:44:59
#381851
E aí cara, conseguiu resolver?

Se sim feche o tópico, ok?
Abraços.
Tópico encerrado , respostas não são mais permitidas