- •Теоретична частина
- •1.1. Основні апаратні та програмні платформи.
- •1.2 Стан корпоративного програмного середовища типовою організації
- •1.3 Крос-платформні технології
- •2. Розробка програмного забезпечення
- •2.1 Бібілотека Juce
- •2.2 Підтримувані компілятори
- •2.3 Отримання і типи ліцензій
- •2.4 Клас Label
- •2.5 Клас TextEditor
- •2.7 Клас ComboBox
- •3.Демонстрація роботи програми
- •Висновки
- •Список використаних літературних джерел
- •Список використаних інтернет-ресурсів
2.7 Клас ComboBox
Клас ComboВох надає користувачу можливість вибору одного елемента зі списку. Відображення всього списку (розкриття) відбувається тільки на деякий проміжок часу, для того, щоб користувач міг зробити вибір, після чого список повертається в своє початкове положення.
Щоб додати новий елемент у список, використовується метод void ComboBox :: addltem (const String & newItemText, int newltemld), де newItemText - текст нового елементу списку, a newltemld - індекс, з яким він буде асоціюватися. Зверніть увагу, що значення індексу не повинно бути рівним нулю.
Звернення до елементів списку здійснюється за їх індексах. Отримати індекс елемента списку, який вибрав користувач, можна за допомогою методу int ComboBox :: getSelectedld () const throw (). Число елементів списку дозволяє отримати функція int ComboBox :: getNumltems () const throw ().
У попередніх прикладах ми використовували віджети класу ComboBox, які надавали користувачеві можливість вибору значень зі списку, що не не дозволяли редагувати відображуваний текст. Можна зробити так, щоб текст, що відображається в випадаючому списку міг бути змінений користувачем. Для установки віджета в цей режим викликається метод void ComboBox :: setEditableText (bool isEditable), де isEditable - прапор включення / відключення режиму редагування. Якщо він приймає значення true, то подвійне клацання мишею покаже текстовий редактор (у полі відображення тексту списку з'явиться курсор, а поточний елемент списку буде виділений). Замість подвійного клацання можна викликати редактор програмно за допомогою методу void ComboBox :: showEditor ().
На жаль, на відміну від інших інструментів для побудови графічного інтерфейсу користувача, наприклад, Qt, в Juce користувач не може сам додавати елементи в список. Це відображає позицію творця бібліотеки, Julian Störer, який пише: "Я ніколи не відчував необхідності змінювати або видаляти елементи списку. Компонент графічного інтерфейсу - це не місце для зберігання і маніпулювання списками даних. У прийнятому дизайні" модель - вистава "випадає список - це просто спосіб відображення вашого набору елементів. Коли ваш набір змінюється, ви повинні очистити і заново згенерувати вміст вашого списку, щоб відобразити нові елементи ".
Для того, щоб очистити список, що випадає, необхідно викликати метод void ComboBox :: clear (bool dontSendChangeMessage = false), де dontSendChangeMessage - прапор відправки повідомлення про зміну списку. У випадку, якщо список буде очищений, це повідомлення буде все одно відправлено, навіть в тому випадку, якщо параметр dontSendChangeMessage прийме значення true.
3.Демонстрація роботи програми
В головному вікні програми (Рис. 3.1) ми можемо бачити слайдери для вибору розмірності вхідної матриці, кнопки «Genarate» для генерації випадкової матриці і «Enter» для введення матриці з клавіатури, а також елемент керування вибору зі списку «СотЬоВох» для вибору дії над матрицею.
Рис.
3.1 - Головне вікно програми
Щоб згенерувати випадкову матрицю необхідно встановити за допомогою слайдерів розмірність і натиснути кнопку «Genarate» (Рис. 3.2).
Рис. 3.2 - Згенерована випадкова матриця.
Щоб виконати будь-яку дію над матрицею необхідно натиснути на елемент керування «ComboВох» і вибрати що потрібно(див. Рис. 3.3).
Рис. 3.3 - Транспонування матриці
Якщо вибрати дію множення матриць то з’явится вікно введення другої матриці(див. Рис. 3.4).
Рис. 3.4 - Вікно вводу матриці для перемноження матриць
Після вводу матриці у вікні відобразиться результуюча матриця(див. Рис. 3.5).
Рис. 3.5 - Перемноження матриць
