
- •Методичні вказівки до практичних робіт
- •Практическая работа №1
- •Хід роботи:
- •Пример выполнения 2
- •Практична робота № 2
- •Хід роботи
- •Контрольні запитання
- •Практична робота № 3
- •Завдання
- •Хід роботи:
- •Створення малюнка і реакції на клавішу миші
- •Практическая работа № 4
- •Контрольні запитання
- •Практична робота № 5
- •Хід роботи:
- •2. Створення ComboBox
- •2. Завдання реакції на вибір в ComboBox
- •2. Операції з елементами
- •2. Ініціалізація списку при виборі пункту меню
- •Практична робота № 6
- •Хід роботи:
- •Практична робота № 7 Тема: Розробка додатка управління базою даних
- •Варіанти завдання:
- •Хід роботи:
- •1. Створення додатка, що відображає дані з бд
- •2. Забезпечення видалення, редагування, додавання записів в бд
- •Забезпечення сортування та фільтрації записів з бд.
- •4.Стандарт odbc і dao
- •Генерация приложения, связанного с базой данных
- •Панель инструментов
2. Завдання реакції на вибір в ComboBox
Тепер давайте для ініціалізації списків ComboBox і ListBox скористаємося обробником, тобто для того, щоб в наших списках здалися деякі задані нами значення, необхідно написати обробник.
Наприклад скористаємося кнопкою Button. Винесемо елемент ще один елемент ComboBox і кнопку Button на нашу форму, клацнемо 2 рази по елементу Button і напишемо наступний код:
void CSpiskiDlg::OnButton1()
{
m_combo2.AddString("1");
m_combo2.AddString("2");
m_list.AddString("Донецк");
m_list.AddString("Краматорск");
m_list.AddString("Дружковка");
}
Не зибудьте для другого ComboBox створити змінну, як це було показано вище (див. рис. 5.6).
Рис. 5.6 - Створення змінної для другого ComboBox
Запустимо програму, клацнемо по кнопці Ініціалізація списку і отримаємо наступний результат (див. рис. 5.7):
Рис. 5.7 – Инициализация списков
2. Операції з елементами
Розглянемо тепер операції з елементами ComboBox'а. Основні з них - це додавання в кінець списку (AddString, розглянута на минулому уроці), вставки (InsertString), видалення (DeleteString) і знаходження потрібної рядки (FindString). Їх використання ясно з наступного прикладу:
Для пошуку значення в списку (у нашому випадку для пошуку у списку міста Краматорськ) в елементі Button2 пишемо наступний код:
void CSpiskiDlg::OnButton2()
{
//ищем строку Краматорск, Если она есть, то ее номер запишется в k
int k=m_list.FindString(0, "Краматорск");
if(k==CB_ERR) //Если такой строки нет, то k будет равно CB_ERR
AfxMessageBox("Сторока не найдена!");
else
{
CString s;
s.Format("Строка найдена на %d-м месте.",k);
AfxMessageBox(s);
};
}
2. Ініціалізація списку при виборі пункту меню
На оцінку відмінно - це завдання виконати самостійно!
При виборі пункту меню ініціалізація списку у першому ComboBox з'являться значення. Для цього необхідно створити меню і прописати у властивостях IDC_BUTTON1, що означає, що прівиборе даного пункту меню виконатися подія записане в обробнику Button1. Приведено властивість меню (див. рис. 5.8):
Рис. 5.8 - Ініціалізація списків при натисканні відповідного пункту меню
КОНТРОЛЬНІ ЗАПИТАННЯ
Як проводиться додавання кнопки до вікна?
Як виконується обробка натиснення кнопки?
Що таке ClistBox?
Як працювати з елементом ClistBox?
Як виконати пошук строки у списку?
Що представляє собою елемент СomboBox?
Перелічте 3 типа комбінованного списку, що розкривається, які розрізнюються стилем їх створення?
В яких випадках використовується елемент список, що розкривається?
Перелічте основні методи загального призначення класу CcomboBox?
Етапи створення ComboBox?
Як програмно задати реакцію на вибор користувачем значення в ComboBox?
Які операції з елементами ComboBox ви знаєте?
Як можна створити програму на базі діалогового вікна?
Практична робота № 6
Тема: Програмування інтерфейсу користувача: діалогові вікна
Мета: навчитися користуватися майстром додатків Visual C + + і створювати програми на мові С + +, створювати діалогові вікна і вкладки
Завдання:
Створити діалогове вікно з вкладками (Вкладка 1, Вкладка 2, Вкладка 3). На вкладках розмістити елементи Edit, в які користувач буде вводити які-небудь значення, які передадуться на головну форму при запуску програми.