Лабораторна робота № 4. Використання додаткових елементів управління в VIsual basic. Net. 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Лабораторна робота № 4. Використання додаткових елементів управління в VIsual basic. Net.



ЛАБОРАТОРНА РОБОТА № 4. ВИКОРИСТАННЯ ДОДАТКОВИХ ЕЛЕМЕНТІВ УПРАВЛІННЯ В VISUAL BASIC.NET.

ЗАГАЛЬНІ ВІДОМОСТІ ПРО ЕЛЕМЕНТ УПРАВЛІННЯ LISTBOX (WINDOWS FORMS)

Елемент управління Windows Forms ListBox відображає список елементів, в якому користувач може вибрати один або декілька елементів, для чого передбачена властивість SelectionMode.

Якщо не усі елементи можуть одночасно відобразитися в полі списку, до елементу управління ListBox автоматично додається смуга прокрутки.

Якщо для властивості MultiColumn задано значення true, елементи списку відображаються в декількох стовпцях і з'являється горизонтальна смуга прокрутки. Якщо для властивості MultiColumn задано значення false, елементи списку відображаються в одному стовпці і з'являється вертикальна смуга прокрутки. Якщо для ScrollAlwaysVisible задано значення true, смуга прокрутки з'являється незалежно від числа елементів. Властивість SelectionMode визначає, скільки елементів списку можна вибрати одночасно.

Як правило, Windows сама обробляє завдання малювання позицій, що відображаються в ListBox. За допомогою властивості DrawMode і обробки подій MeasureItem і DrawItem можна перевизначити автоматичне малювання, що виконується засобами Windows, і малювати елементи своїми силами. За допомогою елементів управління ListBox, що малюються користувачем, можна відображати елементи змінної висоти, зображення або виділення різних позицій списку різними кольорами. Властивість HorizontalExtent, методи GetItemHeight і GetItemRectangle також сприяють малюванню власних елементів.

Властивість SelectedIndex повертає цілочисельне значення, що відповідає першому вибраному елементу списку. Вибраний елемент можна змінити програмними засобами, змінивши в коді значення SelectedIndex; відповідний елемент списку буде виділений у формі Windows. Якщо вибраних елементів немає, значення SelectedIndex рівне -1. Якщо вибраний перший елемент в списку, значення властивості SelectedIndex рівне 0. Якщо вибрані декілька елементів, значення властивості SelectedIndex відбиває вибраний елемент, що з'являється першим в списку. Властивість SelectedItem аналогічно властивості SelectedIndex, але повертає сам елемент, зазвичай у вигляді строкового значення. Властивість Count відбиває число елементів в списку, а значення властивості Count завжди на одиницю більше максимально можливого значення властивості SelectedIndex, оскільки для властивості SelectedIndex індексація ведеться від нуля.

Щоб додати або видалити елементи в елементі управління ListBox, використайте метод Add, Insert, Clear або Remove. Крім того, можна додати елементи в список за допомогою властивості Items під час розробки.

Окрім функцій відображення і вибору, ListBox також реалізує можливості, що дозволяють ефективно додавати елементи в ListBox і виконувати пошук тексту в елементах списку. За допомогою методів BeginUpdate і EndUpdate можна додавати до ListBox велике число позицій, причому елемент управління не перемальовуватиметься при додаванні до списку кожної нової позиції. Методи FindString і FindStringExact дозволяють знайти в списку елемент, що містить певний рядок пошуку.

Приклад. Нехай ми на форму додали елемент управління ListBox1. Тепер для додання елементу у поле ListBox1 потрібно записати код:

ListBox1.Items.Add("TEXT") або

ListBox1.Items.Insert(1,"TEXT").

У першому варіанті запис додається у кінець списку, а у другому – по певному номеру, який задається першим аргументом у Insert.

Для видалення елемента списку призначені два методи: Remove (видаляє зі списку елемент, який передається йому у якості аргумента) та RemoveAt (видаляє зі списку рядок під заданим номером). Наприклад:

ListBox1.Items.Remove("TEXT")

ListBox1.Items.RemoveAt(2)

ЗАГАЛЬНІ ВІДОМОСТІ ПРО ЕЛЕМЕНТ УПРАВЛІННЯ COMBOBOX (WINDOWS FORMS)

Елемент управління Windows Forms ComboBox використовується для виведення даних в полі зі списком, що розкривається. По замовчуванню елемент управління ComboBox відображається у вигляді двох частин: верхня частина є текстовим полем, в яке користувач може ввести елемент списку. Друга частина є списком елементів, один з яких користувач може вибрати.

Властивість SelectedIndex повертає цілочисельне значення, що відповідає вибраному елементу списку. Вибраний елемент можна змінити програмними засобами, змінивши в коді значення SelectedIndex; відповідний елемент списку з’явиться в текстовому полі поля зі списком. Якщо вибраних елементів немає, значення SelectedIndex рівне -1. Якщо в списку вибраний перший елемент, значення SelectedIndex дорівнює 0.

Властивість SelectedItem аналогічно властивості SelectedIndex, але повертає сам елемент, зазвичай у вигляді строкового значення. Властивість Count відображає число елементів в списку, а значення властивості Count завжди на одиницю більше максимально можливого значення властивості SelectedIndex, оскільки для властивості SelectedIndex індексація ведеться від нуля.

Аби додати або видалити елементи в елементі управління ComboBox, використовуються методи Add, Insert, Clear або Remove. Крім того, можна додати елементи в список за допомогою властивості Items під час розробки.

ЗАГАЛЬНІ ВІДОМОСТІ ПРО ЕЛЕМЕНТ УПРАВЛІННЯ CHECKEDLISTBOX (WINDOWS FORMS)

Цей елемент управління представляє список елементів, по якому користувач може переміщатися з використанням клавіатури або смуги прокрутки, розташованої праворуч від елементу управління. Користувач може помістити галочку поряд з одним або декількома елементами, і по відмічених елементах можна переміщатися за допомогою CheckedListBox..::.CheckedItemCollection і CheckedListBox..::.CheckedIndexCollection.

Елемент управління Windows Forms CheckedListBox є розширенням елементу управління ListBox. Він виконує практично всі функції списку, а крім того, в ньому може відображуватися галочка поряд з елементами списку. Інша відмінність між цими елементами управління полягає в тому, що списки з вибраними елементами підтримують лише режим DrawMode..::.Normal; у таких списках можна виділити лише один елемент або не виділити жодного.

Списки з вибраними елементами можуть містити елементи, додані під час виконання у вікні редактора набору рядків; елементи списку можна також додавати з колекції динамічно під час виконання за допомогою властивості Items.

Аби додати об'єкти в список під час виконання, призначте масив заслань на об'єкти за допомогою методаAddRange. Після цього в списку для кожного об'єкту відображуватиме значення рядка за умовчанням. Окремі елементи додаються в список за допомогою методу Add.

Об’єкт CheckedListBox підтримує три стани в CheckState: Checked, Indeterminate і Unchecked. У коді необхідно встановити стан Indeterminate, оскільки інтерфейс користувача для об’єкту CheckedListBox не надає потрібний для цього механізм.

Якщо властивість UseTabStops має значення true, об’єкт CheckedListBox розпізнає і вставить символи табуляції в текст елементу, утворюючи стовпці. Ці позиції табуляції встановлюються заздалегідь і не можуть змінюватися. Для того, щоб використовувати настроювану табуляцію, треба встановити для властивості UseTabStops значення false, для властивості UseCustomTabOffsets значення true, і додати призначені для користувача значення в колекцію CustomTabOffsets.

OrderDetailsTable

ORDERID Код елементу Кількість
     
     

ItemTable

ID Ім'я
  Картопля
  Курча

У цьому сценарії одна таблиця, OrderDetailsTable, містить фактичні відомості, що цікавлять з точки зору відображення і збереження. Проте з метою економії місця вони представлені в незручному для сприйняття вигляді. Інша таблиця, ItemTable, включає лише дані, пов’язані з представленням даних, а саме про те, який код якому продукту відповідає, дані про фактичні замовлення продуктів в ній відсутні.

Таблиця ItemTable зв’язується з елементом управління ComboBox, ListBox або CheckedListBox за допомогою трьох властивостей. Властивість DataSource містить ім’я даної таблиці. Властивість DisplayMember містить стовпець даних тієї таблиці, який необхідно відображувати в елементі управління (назва продукту). Властивість ValueMember містить стовпець даних таблиці з даними, що зберігаються (ідентифікатор).

Таблиця OrderDetailsTable зв’язується з елементом управління за допомогою колекції прив’язок, доступних через властивість DataBindings. При додаванні об’єкту прив’язки в колекцію властивість елементу управління зв’язується з конкретним елементом даних (стовпцем коду) в джерелі даних (таблиці OrderDetailsTable). Коли в елементі управління зроблений вибір, в даною таблицею зберігаються дані, що вводяться.

Створення таблиці підстановок:

1. Додати на форму елемент управління ComboBox, ListBox або CheckedListBox.

2. Реалізувати підключення до джерела даних.

3. Встановити зв’язок між даними в двох таблицях.

4. Задати наступні властивості. Вони можуть бути задані в коді або в конструкторі.

Властивість Параметр
DataSource Таблиця, в якій містяться відомості про те, якому коду відповідає який елемент. У наведеному вище сценарії це ItemTable.
DisplayMember Стовпець таблиці джерела даних, яке необхідно відображувати в елементі управління. У наведеному вище сценарії це "Ім'я" (для завдання в коді використовуйте лапки).
ValueMember Стовпець таблиці джерела даних, яке містить інформацію, що зберігається. У наведеному вище сценарії це "ID" (для завдання в коді використовуйте лапки).

5. У процедурі викликається метод Add класу ControlBindingsCollection для прив’язки властивості SelectedValue елементу управління до таблиці, що реєструє введення форми. Крім того, замість коду це можна зробити в конструкторі за допомогою властивості DataBindings елементу управління у вікні властивостей. У наведеному вище сценарії це OrderDetailsTable, а стовпець — ITEMID.

ListBox1.DataBindings.Add("SelectedValue", OrderDetailsTable, "ITEMID")

ЛАБОРАТОРНА РОБОТА № 4. ВИКОРИСТАННЯ ДОДАТКОВИХ ЕЛЕМЕНТІВ УПРАВЛІННЯ В VISUAL BASIC.NET.



Поделиться:


Последнее изменение этой страницы: 2016-08-12; просмотров: 256; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 54.197.64.207 (0.019 с.)