Справочник Жаркова по проектированию и программированию искусственного интеллекта. Том 4: Программирование на Visual Basic искусственного интеллекта. Валерий Алексеевич Жарков

Чтение книги онлайн.

Читать онлайн книгу Справочник Жаркова по проектированию и программированию искусственного интеллекта. Том 4: Программирование на Visual Basic искусственного интеллекта - Валерий Алексеевич Жарков страница 37

Справочник Жаркова по проектированию и программированию искусственного интеллекта. Том 4: Программирование на Visual Basic искусственного интеллекта - Валерий Алексеевич Жарков

Скачать книгу

style="font-size:15px;">      End If

      End Sub

      'Метод остановки воспроизведения звукового файла:

      Public Sub StopSound()

      If (Not loopSound Is Nothing) Then

      PlaySound(Nothing, IntPtr.Zero, _

      0)

      End If

      End Sub

      'Метод для восстановления воспроизведения звукового файла:

      Public Sub ResumeSound()

      If (Not Sound.Enabled) Then

      Return

      End If

      If (Not loopSound Is Nothing) Then

      PlaySound( _

      loopSound, _

      IntPtr.Zero, _

      Flags.SND_ASYNC Or Flags.SND_MEMORY Or _

      Flags.SND_LOOP)

      End If

      End Sub

      End Class

      Этот файл Sound.vb можно использовать во многих приложениях и играх для воспроизведения звуковых файлов, добавляя его в проект по стандартной схеме Project, Add Existing Item, как мы сейчас покажем на конкретном примере нового проекта.

      Для создания проекта в VS щёлкаем кнопку New Project (или File, New, Project). В панели New Project в окне Project Types выбираем тип проекта Visual Basic, Windows, в окне Templates выделяем шаблон Windows Forms Application, в окне Name записываем любое имя проекта, например, Sounds4 и щёлкаем OK. Создаётся проект, появляется форма Form1 (рис. 6.6) в режиме проектирования.

      Рис. 6.6. Форма Form1 в режиме выполнения.

      Проектируем (или оставляем по умолчанию) эту форму, как описано в параграфе “Методика проектирования формы”.

      Для добавления звукового файла move.wav в проект, в меню Project выбираем Add Existing Item, в панели Add Existing Item в окне Files of type устанавливаем All Files, в окне "Look in" находим (например, в папке с загруженным из Интернета файлом) файл и щёлкаем кнопку Add (или дважды щёлкаем по имени файла). Этот файл мы увидим в панели Solution Explorer.

      В панели Solution Explorer выделяем имя этого файла, а в панели Properties (для данного файла) в свойстве Build Action (Действие при построении) вместо заданного по умолчанию выбираем значение Embedded Resource (Встроенный ресурс).

      Аналогично добавляем и встраиваем в проект второй файл win.wav типа мажорной мелодии.

      Аналогично можно добавить и встроить в проект ещё много звуковых файлов, которые мы желаем послушать во время выполнения приложения или игры.

      Открываем файл Form1.vb (например, так: File, Open, File) и вверху записываем директиву для подключения требуемого пространства имен:

      Imports System.Reflection 'Для класса Assembly.

      Напомним, что эту строку можно и не записывать, но тогда нам придётся перед каждым классом записывать эти пространства имён System.Reflection.

      Теперь в панели Properties (для формы Form1) на вкладке Events дважды щёлкаем по имени события Load (Загрузка).

      Появляется файл Form1.vb с шаблоном метода Form1_Load, который после записи нашего кода принимает следующий вид.

      Листинг 6.10. Метод для загрузки и воспроизведения звуковых файлов.

      'Объявляем объекты класса Sound для каждого звукового файла:

      Dim moveSound As Sound

      Dim winSound As Sound

      'Создаём объект myAssembly класса System.Reflection.Assembly

      'и присваиваем ему ссылку на исполняемую сборку приложения:

      Dim myAssembly As Assembly = Assembly.GetExecutingAssembly()

      'Создаём объект myAssemblyName

      'класса System.Reflection.AssemblyName и присваиваем ему

      'имя сборки, которое состоит из имени проекта,

      'Version, Culture, PublicKeyToken:

      Dim myAssemblyName As AssemblyName = myAssembly.GetName()

      'Из

Скачать книгу