Разработка учебно-методического комплекса для проведения интерактивных уроков с использованием электронной доски по дисциплине "Немецкий язык"

Создание программного обеспечения для проведения преподавателем интерактивных уроков по дисциплине "Немецкий язык". Физическая и логическая структура программного обеспечения, описание его исходных кодов. Описание подпрограмм "Видео-урок" и "Аудио-урок".

Рубрика Программирование, компьютеры и кибернетика
Вид дипломная работа
Язык русский
Дата добавления 17.09.2013
Размер файла 361,7 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Try

dxVideo. Stop ()

dxVideo. Dispose ()

Timer1. Enabled = False

PictureBox4. BackColor = Color. White

state = False

Catch ex As Exception

MsgBox (ex. Message)

End Try

End Sub

Листинг 1.2.3.25 Процедура для отображения процесса воспроизведения видео файла.

Private Sub Timer1_Tick (sender As Object, e As EventArgs) Handles Timer1. Tick

Dim g As Graphics = Graphics. FromHwnd (PictureBox4. Handle)

g. FillRectangle (New SolidBrush (System. Drawing. Color. FromArgb (0, 150, 242)), New Rectangle (0, 0, length,

10))

length += dLength

If length >= PictureBox4. Width Then

dxVideo. Stop ()

Timer1. Stop ()

Timer1. Enabled = False

state = False

End If

End Sub

1.2.3 Описание подпрограммы Аудио Уроки

Данное приложение позволяет прослушать аудио уроки во время учебы. Аудио уроки значительно помогает при освоении иностранного языка. Это позволяет студента научиться разговаривать без акцента на другом языке. Программа может читать аудио уроки в формате MP3. Программе внедрено возможность изменить добавлять и удалять аудио уроков по усмотрению пользователя. Он тоже аналогичен к программу Видео уроки но только он для воспроизведения звуки использует элемент управления audiopanel который создан на основе библиотек DirectX. Программе состоит из следующих пользовательских элементов управления и форм:

1) Пользовательский элемент управления audiolesson

2) Пользовательский элемент управления audiopanel

3) Основная форма Form1

4) Форма настроек Form2

Описание пользовательского элемента управления AudioLessonю. Данный элемент управления создано на основе элемента управления audiopanel. Он позволяет отображать и прокручивать имя воспроизводимого файла по вертикалию

Листинг 1.2.3.26 Процедура загрузки элемента управления

Private Sub audiolesson_Load (sender As Object, e As EventArgs) Handles MyBase. Load

SetStyle (ControlStyles. UserPaint, True)

SetStyle (ControlStyles. AllPaintingInWmPaint, False)

SetStyle (ControlStyles. OptimizedDoubleBuffer, True)

Audiopanel1. Width = Me. Width

Audiopanel1. Location = New Point (0, Me. Height - Audiopanel1. Height - 5)

Panel1. Width = Me. Width - 10

Panel1. Location = New Point (5,5)

x = 0

y = Panel1. Height / 2 - Label1. Height / 2

End Sub

Листинг 1.2.3.27 Процедура при изменении размера элемента управления.

Private Sub audiolesson_Resize (sender As Object, e As EventArgs) Handles Me. Resize

Audiopanel1. Width = Me. Width

Audiopanel1. Location = New Point (0, Me. Height - Audiopanel1. Height - 5)

Panel1. Width = Me. Width - 10

Panel1. Location = New Point (5,5)

End Sub

Листинг 1.2.3.28 Функция для задания воспроизводимого файла.

Public Function FileName (ByVal sFileName As String)

Dim f As IO. FileInfo = New IO. FileInfo (sFileName)

fname = f. Name

Label1. Text = fname

Audiopanel1. FileName (sFileName)

End Function

Листинг 1.2.3.29 Свойство для включения или отключения скручивания текста.

Public WriteOnly Property ScrollText () As Boolean

Set (value As Boolean)

If value = True Then

Timer1. Enabled = True

Else

Label1. Left = 10

Timer1. Enabled = False

Timer1. Stop ()

End If

End Set

End Property

Листинг 1.2.3.30 Процедура для прокручивания текста

Private Sub Timer1_Tick (sender As Object, e As EventArgs) Handles Timer1. Tick

Dim sLocation As Point = New Point (0, 0)

Label1. Location = New Point (x, y)

If x = Panel1. Width + Label1. Width Then

x = 0

End If

x += 1

End Sub

Описание пользовательского элемента управления audiopanel. Данный элемент управления позволяет воспроизводить mp3 файлы. Для воспроизведения используется DirectX.

Листинг 1.2.3.31 Процедура загрузки элемента управления.

Private Sub audiopanel_Load (sender As Object, e As EventArgs) Handles MyBase. Load

SetStyle (ControlStyles. UserPaint, True)

SetStyle (ControlStyles. AllPaintingInWmPaint, True)

SetStyle (ControlStyles. OptimizedDoubleBuffer, True)

With PictureBox1

. BackgroundImage = My. Resources. play_default

. BackgroundImageLayout = ImageLayout. Center

. Top = Me. Height / 2 - PictureBox1. Height / 2

. Left = 10

End With

With PictureBox2

. Top = Me. Height / 2 - PictureBox2. Height / 2

. BackgroundImage = My. Resources. stop_defaults

. BackgroundImageLayout = ImageLayout. Center

. Left = Me. Width - . Width - 10

End With

With PictureBox3

. Top = Me. Height / 2 - PictureBox3. Height / 2

. BackColor = Color. White

. Left = PictureBox1. Left + PictureBox1. Width + 10

. Width = PictureBox2. Left - PictureBox2. Width * 2 - 10

End With

End Sub

Листинг 1.2.3.33 Процедура элемента управления при изменения его размеров.

Private Sub audiopanel_Resize (sender As Object, e As EventArgs) Handles Me. Resize

With PictureBox1

. BackgroundImage = My. Resources. play_default

. BackgroundImageLayout = ImageLayout. Center

. Top = Me. Height / 2 - PictureBox1. Height / 2

. Left = 10

End With

With PictureBox2

. Top = Me. Height / 2 - PictureBox2. Height / 2

. BackgroundImage = My. Resources. stop_defaults

. BackgroundImageLayout = ImageLayout. Center

. Left = Me. Width - . Width - 10

End With

With PictureBox3

. Top = Me. Height / 2 - PictureBox3. Height / 2

. Left = PictureBox1. Left + PictureBox1. Width + 10

. Width = PictureBox2. Left - PictureBox2. Width * 2 - 10

. BackColor = Color. White

End With

End Sub

Листинг 1.2.3.33 Процедура при нажатии на кнопку Play

Private Sub PictureBox1_Click (sender As Object, e As EventArgs) Handles PictureBox1. Click

PictureBox1. BackgroundImage = My. Resources. play_on_click

If fname = Nothing Then Exit Sub

If dxAudio. Playing = True Then Exit Sub

dxAudio. Play ()

pWidth = PictureBox3. Width

dLength = PictureBox3. Width / dxAudio. Duration

Length = 0

Timer1. Enabled = True

End Sub

Листинг 1.2.3.34 Процедура при нажатии на кнопку Stop

Private Sub PictureBox2_Click (sender As Object, e As EventArgs) Handles PictureBox2. Click

If fname = Nothing Then Exit Sub

PictureBox2. BackgroundImage = My. Resources. stop_click

If dxAudio. Stopped = False Then

dxAudio. Stop ()

Timer1. Stop ()

Timer1. Enabled = False

Dim g As Graphics = Graphics. FromHwnd (PictureBox3. Handle)

g. Clear (Color. White)

End If

End Sub

Листинг 1.2.3.35 Процедура отображения состояния воспроизведения.

Private Sub Timer1_Tick (sender As Object, e As EventArgs) Handles Timer1. Tick

Dim g As Graphics = Graphics. FromHwnd (PictureBox3. Handle)

g. FillRectangle (Brushes. MediumTurquoise, New Rectangle (0, 0, Length, PictureBox3. Height))

Length += dLength

End Sub

Листинг 1.2.3.36 Функия для задания файла и для создания нового экземпляра класса Audio.

Public Function FileName (ByVal sFileName As String) As String

fname = sFileName

Try

dxAudio = New Microsoft. DirectX. AudioVideoPlayback. Audio (fname)

Catch ex As Exception

MsgBox (ex. Message)

End Try

End Function

Листинг 1.2.3.37 Функция для задания имя файла с автовоспроизведением.

Public Function FileName (ByVal sFileName As String, ByVal AutoPlay As Boolean)

Try

fname = sFileName

dxAudio = New Microsoft. DirectX. AudioVideoPlayback. Audio (fname, AutoPlay)

Catch ex As Exception

MsgBox (ex. Message)

End Try

End Function

Описание исходных кодов основной формы Form1. Данная форма является главным окном приложения. В нем отображается все данные. В форме на основе файлов которые находятся в рабочих папках программы создается список mp3 файлов в виде аудио плеера.

Листинг 1.2.3.38 Процедура при загрузке формы. Форма перед запуском настроится на основе параметров из конфирурационного файла.

Private Sub Form1_Load (sender As Object, e As EventArgs) Handles MyBase. Load

Try

' Задаем стил

' Элемент сам рисует вместо ос

SetStyle (ControlStyles. UserPaint, True)

' Отрисаем все сообшения ОС

SetStyle (ControlStyles. AllPaintingInWmPaint, True)

' Включаем двойную буферизация

SetStyle (ControlStyles. OptimizedDoubleBuffer, True)

Dim s As String = Application. StartupPath & "\data"

If Not IO. Directory. Exists (s) Then

IO. Directory. CreateDirectory (s)

End If

Dim b As Array

' Настроим форму

With Me

. StartPosition = FormStartPosition. CenterScreen

. FormBorderStyle = Forms. FormBorderStyle. None

' Задаем цвет фона

b = Split (ini. ReadString ("Application", "BackColor", "255,0,122, 204"), ",")

. BackColor = System. Drawing. Color. FromArgb (b (0), b (1), b (2), b (3))

' Загружаем иконку

Dim fname As String = ini. ReadString ("Application", "Icon", "")

If fname <> "" Then

If IO. File. Exists (fname) Then

. Icon = New Icon (fname)

End If

End If

' Вес экран

. WindowState = FormWindowState. Maximized

. Size = Screen. PrimaryScreen. WorkingArea. Size

End With

' Выполняем настройку загловка

With Label1

. Text = ini. ReadString ("Header", "Text", "Аудиоуроки")

. AutoSize = False

. Size = New Size (Me. Width, 100)

. TextAlign = ContentAlignment. MiddleLeft

. Padding = New System. Windows. Forms. Padding (20, 10, 10,10)

Dim bgc As Array = Split (ini. ReadString ("Header", "BackColor", "255,47,47,47"), ",")

. BackColor = System. Drawing. Color. FromArgb (bgc (0), bgc (1), bgc (2), bgc (3))

bgc = Split (ini. ReadString ("Header", "ForeColor", "255,0,150,255"), ",")

. ForeColor = System. Drawing. Color. FromArgb (bgc (0), bgc (1), bgc (2), bgc (3))

bgc = Split (ini. ReadString ("Header", "Font", "Palatino Linotype,32"), ",")

. Font = New Font (bgc (0). ToString, bgc (1))

. Location = New Point (0, 0)

End With

Dim lp As String = ini. ReadString ("Application", "LessonsPath", Application. StartupPath & "\data")

If IO. Directory. Exists (lp) Then

dr = New DirectoryInfo (lp)

Else

dr = New IO. DirectoryInfo (Application. StartupPath & "\data")

End If

d = dr. GetDirectories

' Настройка листбокса

With ListBox1

. Items. Clear ()

If IO. Directory. Exists (Application. StartupPath & "\Data") = False Then IO. Directory. CreateDirectory (Application. StartupPath & "\Data")

End If

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

. Items. Add (d (i))

Next

b = Split (ini. ReadString ("LessonList", "BackColor", "255,67,67,67"), ",")

. BackColor = System. Drawing. Color. FromArgb (b (0), b (1), b (2), b (3))

b = Split (ini. ReadString ("LessonList", "ForeColor", "255,0,150,255"), ",")

. ForeColor = System. Drawing. Color. FromArgb (b (0), b (1), b (2), b (3))

. Location = New Point (10,10)

. Size = New Size (SplitContainer1. Panel1. Width - 20, SplitContainer1. Panel1. Height - 20)

End With

'Настроим контейнер

With SplitContainer1

b = Split (ini. ReadString ("Application", "ContentBackClolo", "255,239,239,242"), ",")

. BackColor = System. Drawing. Color. FromArgb (b (0), b (1), b (2), b (3))

. Size = New Size (Me. Width, Me. Height - 160)

' Задаем цвет первого панеля

b = Split (ini. ReadString ("Application", "LeftPanelBackColor", "255,239,239,242"), ",")

. Panel1. BackColor = System. Drawing. Color. FromArgb (b (0), b (1), b (2), b (3))

' Теперь задаем фон второго панеля

b = Split (ini. ReadString ("Application", "RightPanelBackColor", "255,239,239,242"), ",")

. Panel2. BackColor = System. Drawing. Color. FromArgb (b (0), b (1), b (2), b (3))

' Назначим местоположение

. Location = New Point (0, 110)

. Panel2. Padding = New System. Windows. Forms. Padding (10, 10, 10,10)

End With

CreateAudioList (dr. FullName)

With PictureBox1

. Location = New Point (0, 100)

. Size = New Size (SplitContainer1. Width, 20)

. BackColor = SplitContainer1. BackColor

End With

With PictureBox2

. Location = New Point (0, SplitContainer1. Top + SplitContainer1. Height - 23)

. Size = New Size (SplitContainer1. Width, 25)

. BackColor = SplitContainer1. BackColor

End With

With Label2

. Text = "Настройка"

. Font = New Font ("Palatino Linotype", 18)

. ForeColor = Color. Black

. Location = New Point (30, Me. Height - 10 - Label2. Height)

End With

Catch ex As Exception

MsgBox (ex. Message)

End Try

End Sub

Листинг 1.2.3.39 Функция для создания списка аудио файлов в виде аудио плеера.

Public Function CreateAudioList (ByVal sDirectory As String)

Dim drc As DirectoryInfo = New DirectoryInfo (sDirectory)

Dim sFiles () As FileInfo = drc. GetFiles ("*. mp3")

If sFiles. Count = 0 Then Exit Function

If SplitContainer1. Panel2. Controls. Count > 0 Then

Dim al As audiolesson = New audiolesson

For i As Integer = 0 To SplitContainer1. Panel2. Controls. Count - 1

al = SplitContainer1. Panel2. Controls (i)

al. aStop ()

Application. DoEvents ()

Next

End If

SplitContainer1. Panel2. Controls. Clear ()

Dim x As Integer = 10

Dim y As Integer = 10

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

aLesson = New audiolesson

With aLesson

. Location = New Point (x, y)

. Width = SplitContainer1. Panel2. Width - 40

y +=. Height + 10

. FileName (sFiles (i). FullName)

End With

Application. DoEvents ()

SplitContainer1. Panel2. Controls. Add (aLesson)

Next

End Function

Описание формы для настроек Form2. Данное окно позволяет выполнять операции удаления, добавления, создания разделов.

Листинг 1.2.3.40 Процедура при загрузке формы Form2.

Private Sub Form2_Load (sender As Object, e As EventArgs) Handles MyBase. Load

dr = New DirectoryInfo (ini. ReadString ("Application", "LessonsPath", Application. StartupPath & "\Data"))

Dim d () As DirectoryInfo = dr. GetDirectories

TextBox1. Text = dr. FullName

If d. Length <> 0 Then

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

ComboBox1. Items. Add (d (i). Name)

Next

End If

Dim finfo () As FileInfo = dr. GetFiles ("*. mp3")

If finfo. Length = 0 Then Exit Sub

CheckedListBox1. Items. Clear ()

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

CheckedListBox1. Items. Add (finfo (i). Name)

Next

End Sub

Листинг 1.2.3.41 Процедура при выборе раздела.

Private Sub ComboBox1_SelectedIndexChanged (sender As Object, e As EventArgs) Handles ComboBox1. SelectedIndexChanged

If ComboBox1. Text. Length > 0 Then

CheckedListBox1. Items. Clear ()

Dim s As String = ComboBox1. Text

Dim s2 As String = dr. FullName

Dim drc As DirectoryInfo = New DirectoryInfo (s2 & "\" & s)

Dim finfo () As FileInfo = drc. GetFiles ("*. mp3")

If finfo. Length = 0 Then Exit Sub

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

CheckedListBox1. Items. Add (finfo (i). Name)

Next

End If

End Sub

Листинг 1.2.3.42 Процедура удаления выбранных файлов.

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

If FolderBrowserDialog1. ShowDialog = Windows. Forms. DialogResult. OK Then

Dim path As String = FolderBrowserDialog1. SelectedPath

Dim ht As Hashtable = New Hashtable

ht. Add ("LessonsPath", path)

ini. Write ("Application", ht)

TextBox1. Text = path

dr = New DirectoryInfo (path)

Dim d () As DirectoryInfo = dr. GetDirectories

ComboBox1. Items. Clear ()

If d. Length <> 0 Then

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

ComboBox1. Items. Add (d (i). Name)

Next

End If

Dim finifo () As FileInfo = dr. GetFiles ("*. mp3")

CheckedListBox1. Items. Clear ()

If finifo. Length > 0 Then

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

CheckedListBox1. Items. Add (finifo (i). Name)

Next

End If

End If

End Sub

Размещено на Allbest.ru

...

Подобные документы

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.