стять компоненту для розрахунку матриць.
Поверхнею для розрахунку матриць є розробляється в цій роботі графічна користувацька компонента (matrixCalc).
Батьківська і дочірня форма.
Батьківська форма містить пункти меню:
Додати форму
Додає дочірню форму з користувацької компонентою
Розташування: вертикально, горизонтально.
Упорядковує дочірні вікна.
Файл
Відкрити (відкриває .txt або. mtx)
Зберегти як підрозділяється на .txt (зберігає матриці в txt файл) і .mtx (зберігає в двійковий файл)
2.2 Користувацька компонента для розрахунку матриць
Загальний опис компоненти (matrixCalc)
Компонента поділяється на три взаємопов'язаних частини:
. Меню menustip
. Компонента glControl
. Форми для вводу даних
Меню
За допомогою нього задається операція і відображається потрібна форма.
Пункт:
Операції:
Дві матриці (множення, додавання, віднімання)
Одна матриця (зворотна, транспонування, визначник)
Компонента glControl
Являє собою область для відображення даних.
Форми для вводу даних
Складається з 3 форм, одна з яких є батьківської, решта 2 форми є нащадками.
Батьківська форма (Form1) складається з 2 числових полів (myTextBox) і таблиці для введення даних (myDataGridView), а також кнопки button.
Елемент форми myTextbox є користувальницької компонентою, успадкованої від елемента textbox і є числовим полем, в яке можна вводити тільки цілочисельні значення.
Елемент форми myDataGridView також є користувальницької компонентою, успадкованої від елемента DataGridView і є таблицею, до якої користувач може вводити тільки цілі числа або числа з плаваючою комою.
Введення даних здійснений таким чином: користувач вибирає операцію, відкривається форма, вводить кількість рядків і стовпців, вводить дані в таблицю, якщо режим множення, додавання або віднімання, то після введення даних і натисканні на клавішу Enter відкривається друга форма і вводяться дані в таблицю для матриці 2, після натисканні на кнопку OK другої форми відбувається розрахунок операції для введених матриць і результат відображається на компоненті glControl. Якщо ж обрана операція для однієї матриці (визначник, зворотна, транспонування) відкриття другої форми не відбувається, користувач вводить кількість рядків і стовпців і натискає на кнопку OK, після цього проводиться розрахунок і відображення. Також проводиться обробка некоректних значень, про що користувач сповіщається за допомогою повідомлень.
Основні елементи поля компоненти:
public static List lt; matrix gt; matrixList
Список матриць
public static Mode operationMode
Поточна операція
public static Point resolution
Максимальне значення осей x і у
TextureFont texFont
Об'єкт, що містить в собі шріфти для відображення тексту
Додаткові поля для зберігання даних, використовуваних алгоритмами (loaded, check, det)
Програмна реалізація елементів matrixCalc.
У результаті аналізу предметної області була отримана структурна схема системи. На даному етапі розробки користувальницької компоненти необхідно створити програмну реалізацію цієї системи.
Загальна особливість всіх елементів, це те, що кожен повинен мати свій фіксований розмір і мати метод для графічного відображення, тому це буде є основою для матриці.
Для сітки і осередків зі значеннями (тобто матриці) спільним елементом є кількість рядків і стовпців.
Осередок представляє з себе прямокутник, що складається з 4 ліній, а лінія складається з 2 точок, тому для відображення прямокутника необхідний метод для створення лінії по 2 точкам, щоб згодом з його використанням побудувати клітинку з вибраними розмірами.
Класом спадкоємцем осередку буде текст осередки. Текст осередку включає в себе розташування посередині над осередком (для позначення номера стовпця) і ліворуч від комірки (для позначення номера рядка). Сітка складається з певної кількості рядків і стовпців, тому...