Массив Объектов (button) И Mciexecute

klesivp1

New Member
19.12.2014
1
0
#1
Как в массиве объекта (Button) добавить такое событие на каждый Button
на каждый Button своя мелодия при нажатии


Код:
Public Class Form1

Private Declare Function mciExecute Lib "winmm.dll" (ByVal lpstrCommand As String) As Long

Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click

Dim Button() As Button = {Button1, Button2, Button3, Button4, Button5}
Dim Audio() = {"D:\Audio\1.wav", "D:\Audio\2.wav", "D:\Audio\3.wav", "D:\Audio\4.wav", "D:\Audio\5.wav"}

For i As Integer = 0 To fileLoad.Length - 1

Button(i).Text = (i)
Call mciExecute("play " & Audio(i))

Next


End Sub

End Class
 

alex77755

Well-Known Member
15.02.2009
128
0
62
Украина Павлоград
#2
В бейсике кнопки буз всякой проблемы можно сделать массивом ещё на стадии создания и нет смысла применять класс
Процедура и так будет одна для всех кнопок и у каждой кнопки будет свой индекс
Если же это VBA, то для того, что бы была одна процедура на все кнопки нужен класс
Но так же нужен глобальный массив объявленный как этот класс.
И нужна процедура сбора кнопок в этот массив.
А вот в самом классе объявление массива кнопок не нужно.
Но нужно какое-то отличие в кнопках что бы потом в процедуре их распознать.
Например в Tag каждой кнопки записать имя файла звука.
Тогда и массива путей звуков не понадобится