Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
7777777777.docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
80.44 Кб
Скачать

19/ Рядок стану

Рядок стану – це спеціальний елемент вікна, що складається з декількох панелей для відображення поточної інформації про стан і режим роботи додатку. При роботі з різними додатками Windows часто використовується рядок стану. Наприклад, переглядаючи текст у Microsoft Word, по рядку стану можна визначити номер сторінки.

Щоб додати рядок стану у форму використовується елемент управління StatusStrip. За замовчуванням рядок стану розміщується в нижній частині вікна додатку. Щоб змінити його положення, необхідно скористатися властивістю Dock, яка може приймати одне зі значень перерахування DockStyle: Bottom (Знизу), Fill (На всю форму), Left (Зліва), None (У будь-якому місці форми), Right (Праворуч) і Тор (Зверху).

Рядок стану складається з набору елементів, але спочатку він не містить жодного. Для додавання, видалення елементів рядка стану, а також налаштування їх властивостей використовується діалогове вікно Items Collection Editor (Редактор списку елементів) (див. малюнок нижче), що відкривається при виборі властивості Items елемента управління StatusStrip.

Список, що розкривається Select item and add to list below (Виберіть елемент і додайте в нижче розташований список) цього діалогового вікна містить перелік можливих елементів, які можна додати на рядок стану: індикатор виконання, кнопка, текст.

Поле Members (Компоненти) діалогового вікна Items Collection Editor (Редактор списку елементів) містить список всіх елементів цього рядка стану. За допомогою кнопки Add (Додати) можна додати нові елементи на рядок стану. Видалити існуючу панель можна за допомогою розташованої праворуч від поля Members (Компоненти) кнопки.

У правій частині діалогового вікна Items Collection Editor (Редактор списку елементів) є перелік властивостей виділеної в полі Members (Компоненти) панелі. Список властивостей залежить від вибраного елемента.

Панель інструментів

На додаток до рядку стану і контекстного меню часто використовуються панелі інструментів, що дозволяють прискорити доступ до функцій програми. Як правило, панель інструментів розташовується вгорі вікна під головним меню, хоча її можна переносити і змінювати розміри. Зазвичай панель інструментів містить найбільш часто використовувані команди головного або контекстного меню. Для проектування панелей інструментів у Visual Basic служить елемент управління ToolStrip.

Панель інструментів складається з набору елементів управління ToolStripButton, які можуть являти собою випадні меню, кнопки з зображенням або текстом і роздільники.

Для додавання елементів на панель інструментів використовується діалогове вікно Items Collection Editor (Редактор списку елементів) (див. малюнок), що відкривається при виборі властивості Items розташованого на формі елементу управління ToolStrip.

Список Select item and add to list below, що розкривається (Виберіть елемент і додайте в нижче розташований список), цього діалогового вікна містить перелік можливих елементів, які можна додати на панель інструментів: кнопка, мітка, текстове поле, список, що розкривається, роздільник, індикатор виконання.

За допомогою кнопки Add (Додати), розташованої ліворуч від списку, можна додати нові елементи на панель інструментів.

Поле Members (Компоненти) діалогового вікна Items Collection Editor (Редактор списку елементів) містить список всіх елементів панелі інструментів. У правій частини діалогового вікна Items Collection Editor (Редактор списку елементів) розташований перелік властивостей виділеного в полі Members (Компоненти) елемента панелі інструментів.

20/

Діалогові вікна

У Visual Basic існує спеціальний вид вікон – діалогові вікна – і добре розвинений інструментарій, наданий у розпорядження розробника для їх створення. Діалогові вікна бувають двох типів – модальні та немодальні. Модальне діалогове вікно - це вікно, з якого не можна перейти в інше вікно, не закривши поточне. Цей вид діалогових вікон використовується для видачі повідомлень про хід роботи додатку, налаштування додатку або введення яких-небудь даних, необхідних для його роботи. Модальне діалогове вікно змушує користувача виконати деякі дії або відповісти на запит додатку введенням інформації або натисненням однієї з кнопок.

Немодальний діалогове вікно - це вікно, яке дозволяє переміщуватися на інше вікно або форму без закриття поточного вікна. Цей тип діалогових вікон використовується рідше.

Прикладом немодального діалогового вікна в Visual Basic є вікно Find (Пошук), що дозволяє здійснювати пошук потрібної інформації.

Найпростіші з діалогових вікон - це вікна повідомлень. На додаток до цього простому діалоговому вікну в Visual Basic існує набір більш складних стандартних вікон додатків:

  • Open (Відкрити) - вікно для пошуку в файловій структурі потрібного файлу;

  • Save As (Зберегти як) - вікно для вибору місця зберігання файлу і введення його нового імені;

  • Font (Шрифт) - вікно для вибору і установки шрифту;

  • Color (Цвет) - вікно для вибору кольорової палітри;

  • Print (Друк) - вікно для налаштування режиму друку.

Розглянемо ці діалогові вікна більш докладно.

Вікно повідомлення

Вікно повідомлень є найпростішим із діалогових вікон і дозволяє відображати інформацію про виконання програми та її стан.

Вікно повідомлень не може приймати текстове введення, воно лише пропонує зробити вибір з обмеженої кількості представлених варіантів. Даний тип вікна не вимагає проектування: вікно складається з заголовка, тексту повідомлення, значка і однієї або декількох кнопок. При цьому існує лише певний набір піктограм і кнопок. Крім того, вікно повідомлень є модальним і користувач не може продовжити роботу програми, не натиснувши одну з запропонованих кнопок.

Вікно повідомлення викликається з програми методом MessageBox.Show, який має наступний синтаксис:

Function Show(ByVal owner As Iwin32Window, ByVal text As String, ByVal caption As String, ByVal buttons As MessageBoxButtons, ByVal icon As MessageBoxIcon, ByVal defaultButton As MessageBoxDefaultButton, ByVal options As MessageBoxOptions) As DialogResult

де:

  • owner – елемент управління, до якого буде відноситися вікно повідомлення;

  • text - відображуваний в діалоговому вікні текст повідомлення. У цей текст можна вставити в якості роздільників рядків повернення каретки, переклад рядка або їх комбінацію за допомогою констант vbCr, vbLf і vbCrLf відповідно;

  • caption - текст заголовка вікна повідомлення;

  • buttons - кнопки, що відображаються у вікні повідомлення. Може приймати одне з значень (див. таблицю) перерахування MessageBoxButtons;

Значення

Набір кнопок у діалоговому вікні

AbortRetryIgnore

Abort (Скасувати), Retry (Повтор) і Ignore (Пропустити)

ок

ОК

OKCancel

OK і Cancel (Скасувати)

RetryCancel

Retry (Повтор) і Cancel (Скасувати)

YesNo

Yes (Так) і No (Ні)

YesNoCancel

Yes (Так), No (Ні) і Cancel (Скасувати)

  • icon - відображуваний поруч з текстом значок. Може приймати одне з значень (див. таблицю нижче) перерахування MessageBoxIcon;

    Значок

    Значення

    Тип повідомлення

    Asterisk information

    Інформує про стан додатку

    Error, Hand, Stop

    Повідомляє про серйозну помилку при виконанні додатку

    Exclamation, Warning

    Попереджає про помилку, яка може викликати труднощі при роботі додатку

    Question

    Запрошує додаткову інформацію

    Немає

    None

    Будь-яке інше повідомлення

  • defaultButton - обрана за замовчуванням кнопка, тобто кнопка, на яку встановлюється фокус. Може приймати одне зі значень перерахування MessageBoxDefaultButton: Button1 (Перша кнопка), Button2 (Друга кнопка) і Button3 (Третя кнопка);

  • options - параметри діалогового вікна. Може приймати одне із значень (див. таблицю нижче) перерахування MessageBoxOptions.

Значення

Опис

DefaultDesktopOnly

Вікно повідомлення розташовується на активному робочому столі

RightAlign

Текст і заголовок вікна повідомлення вирівнюються по правому краю

RtlReading

Елементи вікна повідомлень розташовуються в порядку читання справа наліво. Наприклад, значок з'являється праворуч від тексту повідомлення, а при наявності двох кнопок Yes (Так) і No (Ні) перша розташовується праворуч, а друга - ліворуч

ServiceNotification

Вікно повідомлень розташовується на поточному активному робочому столі навіть в тому випадку, якщо жоден користувач не зареєстрований в системі

Метод MessageBox.Show повертає в залежності від натиснутої кнопки вікна повідомлень одне зі значень перерахування DialogResult. Це необхідно для аналізу натиснутою кнопки та виконання відповідних дій у додатку. Перерахування DialogResult має значення Abort, Cancel, Ignore, No, OK, Retry, Yes, відповідні кнопкам вікна повідомлень, і значення None, коли вікно повідомлень знаходиться в процесі виконання.

Розглянемо невеликий приклад, який дозволить створювати різні вікна повідомлень. Для цього виконайте наступні дії:

  1. Створіть новий Windows-додаток з ім'ям MessageBoxExampIe.

  2. Відкрийте вікно властивостей і вкажіть за допомогою властивостей Text і Name форми заголовок форми Вікна повідомлень і ім'я форми frmMsgBoxes.

  3. Перетягніть на форму два елементи управління Button. Задайте для кожного елемента наступні значення властивостей Text і Name: Вітання і bWelc, Вихід і bExit.

  4. Для відкриття при натисканні кнопки Привітання простого вікна повідомлення, що складається з заголовка, тексту повідомлення і кнопки ОК, додайте в код програми процедуру обробки події натискання кнопки bWelc з наступним рядком: MessageBox.Show("Вітаємо Вас!", "Вікно повідомлень")

  5. Для створення вікна повідомлення, що дозволяє завершити додаток (див. малюнок нижче), додайте в код програми процедуру обробки події натискання кнопки bExit з наступним кодом:

Dim result As DialogResult

result = MessageBox.Show("Вы действительно хотите закрыть приложение?", "Закрытие приложения", MessageBoxButtons.YesNo, MessageBoxIcon.Asterisk)

If result = DialogResult.Yes Then

Application.Exit()

End If

Діалогове вікно налаштування шрифтів тексту

При виконанні програми іноді потрібно змінювати шрифт надписів або інших даних. Найбільш простим способом завдання шрифтів є використання діалогового вікна Шрифт. Для його створення призначений елемент управління FontDialog. Деякі властивості даного елемента вказані в таблиці:

Властивість

Опис

AllowSimulations

Значення за замовчуванням True задає використання курсиву, жирного курсиву і жирних шрифтів

AllowVectorFonts

Значення за замовчуванням True дозволяє відображати векторні шрифти

AllowVerticalFonts

Значення за замовчуванням True дозволяє відображати і горизонтально, і вертикально орієнтовані шрифти. Значення False регламентує відображення тільки горизонтально орієнтованих шрифтів

Color

Визначає або повертає зазначений у вікні налаштування шрифту колір тексту

FixedPitchOnly

Значення True дозволяє відображати у вікні налаштування шрифтів тільки Шрифт фіксованої ширини. За замовчуванням задано значення False

Font

Визначає або повертає зазначений у вікні налаштування шрифт тексту

FontMustExist

Значення True не дозволяє визначити неіснуючий шрифт

MaxSize, MinSize

Задають максимально і мінімально можливі розміри шрифтів відповідно

ShowApply

Задає відображення кнопки Применить у вікні налаштування шрифтів. За замовчуванням вказано значення False, що відповідає відсутності кнопки

ShowColor

Визначає, чи доступний вибір кольору. За замовчуванням задано значення False

ShowEffects

Визначає, чи розташовані у вікні елементи управління для задання підкреслення та закреслення тексту. За замовчуванням властивість приймає значення True

Для відображення вікна налаштування шрифтів служить метод ShowDialog елемента управління FontDialog. Розглянемо приклад, що демонструє використання діалогового вікна налаштування шрифтів. Для цього доповнимо програму DialogsExampIe:

  1. Для створення вікна Шрифт додайте на форму елемент управління FontDialog з ім'ям FontDlg.

  2. Потім перетягніть на форму елемент управління Button, властивостям Text і Name якого надайте значення Изменить шрифт і bFont відповідно.

  3. Щоб продемонструвати задання шрифту для напису, розташуємо на формі елемент управління Label з ім'ям label.

  4. Далі необхідно в процедуру обробки події bFont_click додати наступний код:

FontDlg.ShowColor = True

FontDlg.ShowDialog()

label.Font = FontDlg.Font()

label.ForeColor = FontDlg.Color

Програма дозволяє у вікні налаштування шрифтів задавати колір тексту. При цьому для розташованого на формі надпису задається шрифт і колір.

Після запуску додатку при натисканні кнопки Изменить шрифт буде відкриватися діалогове вікно Шрифт (див. малюнок нижче).

Діалогове вікно налаштування колірної палітри

Для налаштування кольору фону форми і розташованих у формі елементів можна використовувати діалогове вікно налаштування колірної палітри, для створення якого призначений елемент управління ColorDialog. За допомогою властивості Color цього елемента можна отримати доступ до обраних у вікні кольорів. Крім зазначеної властивості елемент управління ColorDialog має властивості, перераховані в таблиці:

Властивість

Опис

AllowFullOpen

Дозволяє задавати користувацькі кольори. За замовчуванням приймає значення True.

AnyColor

При значенні True у вікні налаштування колірної палітри відображаються всі доступні основні кольори. За замовчуванням задано значення False.

FullOpen

Значення True задає відображення розширеного вікна налаштування колірної палітри. За замовчуванням має значення False.

SolidColorOnle

При встановленому значенні True дозволяє вибирати тільки однотонні кольори. За замовчуванням властивість приймає значення False.

Як і для розглянутих вище діалогових вікон, для відкриття вікна настройки колірної палітри необхідно скористатися методом ShowDialog.

Доповнимо додаток DialogsExample, задавши можливість зміни кольору фону

форми. Для цього виконаєте наступні дії:

  1. Для створення вікна Цвет необхідно додати на форму елемент управління ColorDialog з ім'ям Colordlg.

  2. Перетягніть на форму елемент управління Button, властивостям Text і Name якого привласніть значення Змінити колір і bcolor відповідно.

  3. Далі необхідно в процедуру обробки події bcolor_ciick додати наступний код:

ColorDlg.Color = Me.BackColor

ColorDlg.FullOpen = True

ColorDlg.ShowDialog()

Me.BackColor = ColorDlg.Color

Програма дозволяє відкривати відразу розширене вікно настройки шрифтів вибраним за умовчанням кольором форми. Потім фону форми присвоюється вибраний у вікні колір.

Після запуску додатку при натисненні кнопки Змінити колір відкриватиметься діалогове вікно Цвет:

21/

Діалогове вікно відкриття файлу

Діалогове вікно відкриття файлу призначене для пошуку файлів, що використовуються в додатку. Для створення цього вікна призначений елемент управління OpenFileDialog. Даний елемент має багато властивосте, основні з яких перераховані в таблиці:

Властивість

Опис

AddExtension

При встановленому значені True додається розширення до імені файлу, якщо його немає. Вказується або значення властивості DefaultExit, або задане властивістю Filter розширення.

CheckFileExists

Перевіряє наявність файлу з вказаним ім'ям при встановленому значенні True. Якщо файл не існує, видається попередження.

CheckPathExists

Перевіряє існування шляху до вказаного файлу при встановленому значенні True. Якщо шлях не існує, видається попередження.

DefaultExt

Визначає розширення файлу, що додається за замовчуванням у випадку, коли користувач вводить ім'я файлу без розширення.

FileName

Визначає повний шлях до файлу, обраного в діалоговому вікні.

Filter

Задає значення списку Тип файлу, що визначає тип відображуваних файлів. Наприклад, для відображення тільки текстових файлів потрібно для цієї властивості задати значення Text files(*.txt)|*.txt. Щоб задати кілька фільтрів, застосовується символ |: Text files (*.txt)|*.txt|AII files (*.*)|*.*. У випадку використання декількох фільтрів можна за допомогою властивості Filterlndex задати відображуваний за замовчуванням фільтр

InitialDirectory

Задає каталог, який відображається під час першого виклику діалогового вікна. Для того щоб при наступних викликах відображався цей же каталог, необхідно властивості RestoreDirectory присвоїти значення True

Multiselect

Дозволяє вибрати декілька файлів в діалоговому вікні при встановленому значенні True

Title

Визначає заголовок діалогового вікна. За замовчуванням вікну присвоюється стандартний для Windows заголовок

Щоб відобразити діалогове вікно відкриття файлу, необхідно викликати метод ShowDialog елемента управління OpenFileDialog. За допомогою методу OpenFile даного елементу можна відкрити потік для читання даних з файлу.

Розглянемо невеликий приклад, який продемонструє використання діалогового вікна відкриття файлу. Для цього виконайте наступні дії:

  1. Створіть новий Windows-додаток з ім'ям DialogsExample.

  2. Відкрийте вікно властивостей і вкажіть за допомогою властивостей Text і Name заголовок форми Діалогові вікна і її ім'я frmDialogs.

  3. Для створення вікна відкриття файлів додайте на форму елемент управління OpenFileDialog. Присвойте значення OpenFileDlg властивості Name цього елемента управління.

  4. Перетягніть на форму елемент управління Button. Присвойте значення Відкрити файл і bOpenFile властивостям Text і Name відповідно.

  5. Щоб при натисканні кнопки Відкрити файл з'являлося діалогове вікно Відкрити, необхідно додати в код програми процедуру обробки події bOpenFile_click (наприклад, за допомогою подвійного клацання на кнопці), має наступний код:

OpenFileDlg.Filter = "Image Files(*.BMP;*.JPG;*.GIF)|*.BMP;*.JPG;*.GIF"

OpenFileDlg.InitialDirectory = "C:\"

OpenFileDlg.ShowDialog()

Даний код дозволяє при відкритті вікна відобразити вміст диска С:. При цьому будуть відображатися лише графічні файли.

  1. Щоб при натисканні кнопки Відкрити у вікні відкриття файлу з'являлося вікно повідомлень з ім'ям обраного файлу, необхідно в код програми додати процедуру обробки події OpenFileDlg_FileOk з наступним рядком:

MessageBox.Show("Выбран файл с именем " + OpenFileDlg.FileName)

Тепер при запуску додатка при натисканні кнопки Відкрити файл буде з'являтися діалогове вікно Відкрити (див. малюнок нижче).

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

Діалогове вікно збереження файлу

Для пошуку файлу, в якому будуть збережені дані із програми, використовується діалогове вікно збереження файлу. Для створення цього вікна служить елемент управління SaveFileDialog.

Цей елемент управління має аналогічні елементу OpenFileDialog властивості, за винятком того, що за замовчуванням для вікна відкриття файлу задається вимога існування файлу, а для вікна збереження файлу немає (тобто різні за замовчуванням значення властивості CheckFileExists). Більш того, в елемента SaveFileDialog є дві додаткові властивості:

  • OverwritePrompt – при значенні True цієї властивості в разі вибору існуючого файлу видається повідомлення, що даний файл буде перезаписаний;

  • CreatePrompt – при значенні True цієї властивості у разі зазначення неіснуючого файлу видається повідомлення, що буде створений новий файл.

За допомогою методу OpenFile даного елемента можна відкрити потік не тільки для читання даних з файлу, але і для запису.

Розглянемо приклад, що демонструє використання діалогового вікна збереження файлу. Для цього доповнимо програму DialogsExampIe:

  1. Для створення вікна збереження файлів додайте на форму елемент управління SaveFileDialog з ім'ям SaveFileDlg.

  2. Потім перетягніть на форму елемент управління Button і його властивостям Text і Name надайте значення Зберегти файл і bSaveFile відповідно.

  3. Для відкриття діалогового вікна збереження файлу при натисканні кнопки Зберегти файл необхідно додати в код програми процедуру обробки події bSaveFile_click, що містить наступний код:

SaveFileDlg.Filter = "All Files (*.*)|*.*"

SaveFileDlg.ShowDialog()

If SaveFileDlg.FileName > "" Then

MessageBox.Show("Выбран файл с именем" + SaveFileDlg.FileName)

End If

Даний код дозволяє у вікні збереження файлу відображати файли будь-якого типу. При натисканні кнопки Сохранить цього вікна відкриватиметься вікно повідомлень з ім'ям зазначеного файлу.

У разі розташування методу MessageBox.Show у процедурі обробки події натискання кнопки Сохранить вікна збереження файлу вікно повідомлень буде відкриватися ще при відкритому вікні збереження файлу. У нашому випадку воно буде з'являтися після закриття вікна.

Після запуску додатку при натисканні кнопки Сохранить файл буде відкриватися діалогове вікно Сохранить как (див. малюнок нижче).

Як видно з малюнка, це діалогове вікно аналогічно вікну, призначеному для відкриття файлу.