
- •1Об’єктно-орієнтоване програмування
- •1.1Основи ооп
- •1.2Створення класів. Методи, властивості, поля
- •1.3Ієрархія класів у програмі
- •2.1Створення форми. Використання Multiple Document Interface (mdi). Події, властивості.
- •2.2Опис використаних елементів управління.
- •2.3 Реалізація графічних елементів програми.
- •3Збереження даних.
- •3.1Створення таблиці. Приклад застосування у програмі.
- •3.2Колекції. Додавання до колекції елементів і доступ до елементів колекції.
- •3.3Запис і читання з файлу.
- •4Реалізація програми мовою с# з використанням ооп
- •4.1Інтерфейс програми.
- •4.2Демонстрація можливостей програми. Тестовий приклад.
- •Висновки.
- •Список використаних джерел.
- •Додаток1.Текст програми
1.3Ієрархія класів у програмі
Дана програма складається з одинадцяти класів, кожний з яких є певною структурою даних. Предметна область програми складається з волонтерів і подій, яких потрібно зареєструвати. Дана програма використовує основні ідеї ООП, це - інкапсуляція, успадкування, поліморфізм. Програма складається з двох основних класів, які називаються: Volunteer і Happening, в яких описано властивості, поля класу і конструктор (з параметрами і без)і десяти класів успадкованих від класу Form. Додавання нових волонтерів реалізують два класи: VolunteerList і FormRegistrationVolunteers. В класі VolunteerList створено таблицю, яка буде відображати додавання нових волонтерів, і запис та зчитування даних. В класі FormRegistrationVolunteers вводимо особисті дані про волонтера. Аналогічно реалізується додавання нових подій за допомогою класів HappeningList і FormRegistrationHappening. Реєстрація волонтера на подію здійснюється за допомогою двох наступних класів: Registration та Assignment. Клас Registration здійснює реєстрацію за допомогою номера волонтера та коду події, а наступний клас відображає ім’я відповідного волонтера та подію на яку він зареєстрований.
2Windows Forms
2.1Створення форми. Використання Multiple Document Interface (mdi). Події, властивості.
Windows Forms створює Graphical Uses Interface (GUI) для різних програм. Форма-це графічний елемент, який появляється на робочому столі. Форма може бути діалоговим вікном,просто вікном або вікном MDI. Компонент – це клас, який реалізує інтерфейс IComponent і визначає різні поведінки, які можуть реалізувати компоненти. Елементи управління видимі, на відміну від компонентів, яким не вистачає графічної частини. Елементи управління і компоненти Windows Forms містяться в панелі Toolbox Visual Studio .Net. Форма служить контейнером для компонентів і елементів управління. Елементи управління добавляються на форму за допомогою коду. При «перетягуванні» елемента управління із панелі Toolbox в форму Visual Studio .Net генерує цей код,який створює певний елемент управління і задає його основні властивості. Користувач може сам написати код, проте елементи управління набагато простіше створювати і модифікувати в панелі Toolbox і вікні Properties, даючи можливість Visual Studio .Net розібратись із деталями. При звертанні користувача до елементу управління з допомогою миші чи клавіатури генерується подія і обробляється спеціальними «обробниками подій». Як правило, результатом подій являється яка-небудь операція. Наприклад, натискання кнопки OK у вікні MessageBox генерує подію. У відповідь на цю подію обробник MessageBox закриває це вікно повідомлень. Клас Form - основне вікно, яке використовується програмними додатками в Windows, повністю кваліфіковані як System.Windows.Forms.Form. Точно так само клас Button фактично являється System.Windows.Forms.Button. Загальний процес проектування додатків Windows потребує створення Windows Forms із заданням її властивостей, з добавленням елементів управління зі своїми властивостями і реалізацією обробників подій. [5]
В таблиці показані загальні властивості, методи і події класу Form.
Властивості, методи і події класу Form |
Опис/Делегат і аргументи події |
Загальні властивості |
|
AcceptButton |
Кнопка, яка буде натисненою при натисненні кнопки <Enter> |
AutoScroll |
Поява смужки прокрутки при необхідності |
CancelButton |
Кнопка, яка є натисненою при натисненні клавіші<Escape> |
FormBorderStyle |
Границя форми |
Font |
Гарнітура відображеного в формі тексту, а також гарнітура шрифту по замовчуванні добавлених в форму елементів |
Text |
Текст в рядку заголовка форми |
Загальні методи |
|
Close |
Закриття форми і звільнення всіх ресурсів. Відкрити попередньо закриту форму не можна. |
Hide |
Приховування форми(ресурси не звільняються) |
Show |
Відображає приховану форму |
Загальні події |
|
Load |
(Делегат EventHandler,аргумент події EventArgs) |
|
Відіграє роль в показі форми. Visual Studio .Net генерує обробник події по замовчуванню, коли програміст двічі клацає кнопкою миші на формі в режимі проектування |
|
|
При створенні елементів управління і обробників подій Visual Studio .Net генерує велику частину коду, яка відноситься до GUI. Програмісти можуть використовувати Visual Studio .Net для виконання великої частини подібних задач графічно , шляхом «перетягування і скидання »(drag and drop) компонентів на форму і завдання властивостей у вікні Properties.
Програма з використанням багатодокументного інтерфейсу (multiple document interface, MDI), представляють користувачу можливість одночасного редагування декількох документів. Вікно додатку багатодокументної програми (MDI) називається батьківським, а всі вікна в додатку – вікнами - наслідниками. Незважаючи на те, що багатодокументний додаток може мати багато вікон-наслідників, кожне із них має тільки одне батьківське вікно. Більше того, активним в кожний конкретний момент часу може бути тільки одне вікно-наслідник. Останні не можуть бути «предками», і їх не можна перемістити за межі батьківського вікна.
Для створення багатодокументної форми добавляємо нову форму (Form) і присвоїмо їй властивість IsMDIContainer значення True. Після цього створюється клас форми-наслідника для добавлення в основну форму. Для цього потрібно клацнути правою кнопкою миші на проекті у вікні Solution Explorer, вибрати команду ADD Windows Form і присвоїти файлу ім’я. Для добавлення в батьківську форму «наслідника» необхідно створити об’єкт нової форми наслідника; встановити її властивість MdiParent в батьківську форму і викликати метод Show. Код для створення наслідника звичайно знаходиться всередині обробника подій, яке створює нове вікно у відповідь на дію користувача. Вибір меню (наприклад, File, в якому вибирається команда New, за якою слідує команда Window)- загальний метод створення нових вікон-наслідників. Властивість MdiChildren форми представляє собою масив посилань на Form-наслідника. Це корисно, якщо батьківське вікно захоче перевірити властивість всіх свої «нащадків». Властивість ActiveMdiChildren повертає посилання на активне вікно-наслідника; воно повертає null, якщо активних вікон-наслідників немає.
Властивості і події MDI-форми |
Опис, делегат і аргументи подій |
Загальні властивості MDI-наслідника |
|
IsMdiChild |
Вказує на те, чи є форма MDI-наслідником. При значенні True, форма - MDI-наслідник (властивість тільки для читання) |
MdiParent |
Задає MDI форму - наслідника. |
Загальні властивості MDI-нащадка |
|
ActiveMdiChild |
Викликає об’єкт Form, який являється поточним активним MDI-наслідником. |
IsMdiContainer |
Вказує на те, чи може форма бути багатодокументною. При значенні True форма може бути багатодокументною батьківською формою. Значення по замовчуванню- False. |
MdiChildren |
Повертає MDI-наслідників у вигляді масиву форм. |
Загальний доступ |
|
LayoutMdi |
Визначає відображення форм-потомків на багатодокументній батьківській формі . В якості параметра приймає перечислення MdiLayout з можливими значеннями ArrangeIcons (упорядкувати значки), Cascade(каскадом), TileHorizontal(впорядкувати по горизонталі), TileVertical (впорядкувати по вертикалі) |
Загальні події |
(Делегат EventHandler, аргументи події EventArgs) |
MdiChildActivate |
Генерується при закритті чи активації MDI-наслідника |