Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
prav_na_prim.docx
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
1.43 Mб
Скачать

2.3 Огляд бібліотек що використовується в роботі

System;

System.Collections.Generic;

System.Linq;

System.Text;

System.Windows;

System.Windows.Controls;

System.Windows.Data;

System.Windows.Documents;

System.Windows.Input;

System.Windows.Media;

System.Windows.Media.Imaging;

System.Windows.Navigation;

System.Windows.Shapes;

System.Data.OleDb;

System.Windows.Controls.Primitives;

System.Windows.Media.Animation;

System.IO;

System.Xml.Linq;

Microsoft.Win32;

System.Windows.Threading;

2.4 Висновки з розділу 2

Було описано особливості мови програмування C# та технологію WPF, середи розробки Microsoft Visual Studio 2010, та обраного компілятору.

3 ОСНОВНІ РІШЕННЯ З РЕАЛІЗАЦІЇ КОМПОНЕНТІВ СИСТЕМИ

3.1 Основні розроблені алгоритми

Алгоритм работы программы, как формируются схемы, например, с точки зрения реализации

Фон схеми створюється за допомогою елементів технології WPF,

самі ж гравці, м’яч, їх розташування, розмір, колір регулюються за допомогою успадкування класу Thumb /// Створення ключови точок на відрізку…

3.2 Основні рішення щодо модульного уявлення системи

Проект складається з таких файлів(табл. 3.1):

Назва файлу

Опис файлу

Trener.exe

Скомпонований файл додатку

Trener.sln

Файл Visual Basic .NET призначений для вне-сення змін у додаток

App.xaml

Розмітка головного додатку

App.xaml.cs

Код головного додатку

CalendarInfo.xaml

Розмітка елементу „Інформація календаря”

CalendarInfo.xaml.cs

Код елементу „Інформація календаря”

CalendarUserControl.xaml

Розмітка елементу „Календар”

CalendarUserControl.xaml.cs

Код елементу „Календар”

PlayerInfo.xaml

Розмітка елементу „Інформація гравця”

PlayerInfo.xaml.cs

Код елементу „Інформація гравця”

ClassPlayer.cs

Код класу „Гравець”

Converts.cs

Код класів-конверторів

MainWindow.xaml

Розмітка головного вікна програми

MainWindow.xaml.cs

Код головного вікна програми

UserControl1.xaml

Розмітка елементу часової лінії

UserControl1.xaml.cs

Код елементу часової лінії

Таблиця 3.1

Файл ClassPlayer.cs містить:

  • публічний метод Player, що ініціалізує об’єкт початковими значеннями;

  • публічний метод CreatePlayer, який додає об'єкт на схему та до часової лінії;

  • метод SetColor, який задає колір об’єкту;

  • метод SortListOfPlayers, котрий сортує список ключових точок;

  • метод RedrawListBoxItem, який створює часову лінію на часовій шкалі;

  • метод FindListVithSecond, котрий використовується для пошуку ключової точки за секундою;

  • публічний метод RedrawAllPointsPlayer, який використовується для пересування гравців відносно часової лінії;

  • метод PointBetweenTwoPoints, який використовується для пересування гравців відносно часової лінії;

  • публічний метод AnimationPlayer, який використовується для створення анімації пересувань;

  • публічний метод PlayerToXML, який використовується для експорту даних про гравця у файл;

  • публічний метод XMLToPlayer, який використовується для імпорту даних про гравця з файлу;

  • публічний метод XMLToPlayerHelper, який допомагає імпортувати дані про гравця з файлу;

  • обробник події onDragDelta, який реагує на перетаскування гравця на схемі;

  • обробник події Player_GotFocus, який реагує на отримання фокусу гравцем;

  • обробник події Player_LostFocus, який реагує на втрату фокуса гравцем;

  • обробник події ContextChangeAdd, який реагує на додавання ключової точки через контекстне меню;

  • обробник події ContextChangeDelete, який реагує на видалення ключової точки через контекстне меню;

Файл MainWindow.xaml.cs містить:

  • публічний метод MainWindow, що ініціалізує об’єкт початковими значеннями;

  • метод RedrawAllPlayers, який пересуває всіх гравців відносно значення слайдера часової шкали;

  • обробник події Sheme_MouseLeftButtonDown, який реагує на натиснення лівою кнопкою миші по схемі;

  • обробник події Sheme_MouseEnter, який реагує на наведення курсору на схему;

  • обробник події Sheme_MouseLeave, який реагує на виведення курсору зі схеми;

  • обробник події Button_Click_Cursor, який реагує на натиснення кнопки меню „Курсор”;

  • обробник події Button_Click_Draw, який реагує на натиснення кнопки меню „Додати гравця”;

  • обробник події Button_Click_Select, який реагує на натиснення кнопки меню „Перемістити”;

  • обробник події Button_Click_Brush, який реагує на натиснення кнопки меню „Кисть”;

  • обробник події Sheme_MouseMove, який реагує на пересування курсором по схемі;

  • обробник події Button_Click_Cursor, який реагує на натиснення кнопки меню „Курсор”;

  • обробник події Class1_MouseLeftButtonDown, який реагує на натиснення по ключовому кадру на часовій лінії;

  • обробник події sliderTimeLine_ValueChanged, який реагує на зміну значення слайдеру часової шкали;

  • обробник події Button_Play_Click, який реагує на натиснення кнопки меню „Грати”;

  • обробник події Button_Pause_Click, який реагує на натиснення кнопки меню „Пауза”;

  • обробник події Button_Import_Click, який реагує на натиснення кнопки меню „Імпортувати схему”;

  • обробник події Button_Export_Click, який реагує на натиснення кнопки меню „Експортувати схему”;

  • обробник події Calendar_DayClick, який реагує на натиснення кнопки дня календаря;

  • обробник події CalendarInfoChange, який реагує на зміну даних календаря;

Файл UserControl1.cs містить:

  • публічний метод Class1, який ініціалізує об’єкт початковими значеннями;

  • статичний метод Class1, який ініціалізує статичні компоненти класу;

  • статичний метод WhatDraw, який регулює режим відображення елементу;

  • обробник події MenuItemAdd_Click, який реагує на натиснення кнопки контекстного меню „Додати ключову точку”;

  • обробник події MenuItemDelete_Click, який реагує на натиснення кнопки контекстного меню „Видалити ключову точку”.

Інформація про гравців зберігається в класі Player, методи й поля…

class Player: Thumb

{

private List<PositionOfPlayer> Points;

private List<Point> Bezye;

private List<double> Time;

public Color color;

public double Size;

public ListBoxItem lbi;

public String ListBoxItemContext {

get { return lbi.Content.ToString(); }

set { lbi.Content = value; }

}

private static bool dragm = true;

public static bool DragModePlayer

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]