• 🔥 Бесплатный курс от Академии Кодебай: «Анализ защищенности веб-приложений»

    🛡 Научитесь находить и использовать уязвимости веб-приложений.
    🧠 Изучите SQLi, XSS, CSRF, IDOR и другие типовые атаки на практике.
    🧪 Погрузитесь в реальные лаборатории и взломайте свой первый сайт!
    🚀 Подходит новичкам — никаких сложных предварительных знаний не требуется.

    Доступ открыт прямо сейчас Записаться бесплатно

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

  • Автор темы Автор темы klesivp1
  • Дата начала Дата начала
K

klesivp1

Как в массиве объекта (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
 
В бейсике кнопки буз всякой проблемы можно сделать массивом ещё на стадии создания и нет смысла применять класс
Процедура и так будет одна для всех кнопок и у каждой кнопки будет свой индекс
Если же это VBA, то для того, что бы была одна процедура на все кнопки нужен класс
Но так же нужен глобальный массив объявленный как этот класс.
И нужна процедура сбора кнопок в этот массив.
А вот в самом классе объявление массива кнопок не нужно.
Но нужно какое-то отличие в кнопках что бы потом в процедуре их распознать.
Например в Tag каждой кнопки записать имя файла звука.
Тогда и массива путей звуков не понадобится
 
Мы в соцсетях:

Взломай свой первый сервер и прокачай скилл — Начни игру на HackerLab