Реферат: Даний курс призначений для тих, хто: ніколи не програмував, але хоче навчитися


Початковий курс програмування Visual Basic


Вступ


Отже, Ви вирішили вивчити мову програмування високого рівня - Visual Basic. Я спробую допомогти вам у цьому. Наберіться трохи терпіння, бажання і вперед, у простори Visual Basic! Адже Visual Basic - це Міцний Горішок! ;)


Даний курс призначений для тих, хто:


ніколи не програмував, але хоче навчитися

програмував на іншій мові (Turbo Pascal, QBASIC)

програмував на іншій мові високого рівня (C++, Delphi)


Як бачите аудиторія досить широка. Від Вас потрібно лише невеликий досвід роботи з Windows. І все.


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


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


Удачі! І Вперед!


^ Урок № 1. Що таке Visual Basic?


Перед програмістами-початківцями завжди постає одне й те саме питання, а саме, яку мову програмування вибрати? На чому програмувати? Можу сказати, що краще починати з легкої і в той же час потужної мови - Visual Basic. Вивчивши прийоми програмування на Visual Basic, ви зможете без особливих зусиль вивчити інші мови, такі як Pascal, C++ і ін.


Слово “БЕЙСИК” (BASIC) – “базовий, основний” - утворено з початкових букв англійського вислову “Універсальна мова символічного кодування для початківців”. Саме оце “для початківців” довго викликало зневагу програмістів, причому подібна зневага не зникла дотепер, незважаючи на наявність професійних видань Visual Basic.


Перший IMB PC мав 16-розрядний бейсік - BASICA, розроблений IBM, який трохи згодом був посунутий мікрософтовським GW-BASIC і QUICK-BASIC. В останньому була прибрана нумерація рядків та додано компілятор, який перетворює бейсік-програму в повноцінний exe-файл. Нарешті в 1992 році фірмою Microsoft був випущений VB 1.0 - дуже проста мова програмування для Windows 3.1. Потім були випущені VB 3.0, VB 4.0, VB 5.0 і нарешті VB 6.0. Останні дві версії мало чим відрізняються, у шостій версії поліпшено ядро та додані декілька нових функцій. Існує ще мова макросів для додатків Microsoft Office (Word, Excel і т.п.). Він називається VBA (Visual Basic for Application). За його допомогою можна маніпулювати додатками Office.


Додатки, написані на Visual Basic відрізняються від звичайних додатків тим, що вимагають для своєї роботи бібліотеку msvbvmX0.dll, яка мусить бути присутня у каталозі Windows\System. У ролі X виступає версія компілятора VB. Для VB5 - msvbvm50.dll, для VB6 - msvbvm60.dll. Ці бібліотеки йдуть у комплекті з WinME (для обох версій) і Win98 (тільки msvbvm50.dll), і природно з більш новими версіями цих операційних систем. Ви не повинні боятися того, що разом з вашим додатком, вам доведеться тягати за собою цю бібліотеку. Вона вже є в 90% користувачів. Але якщо Ви все-таки боїтеся за аудиторію, то можете зашити бібліотеку прямо в EXE файл. Правда для цього прийдеться використовувати засоби не вхідні до складу Visual Basic. Наприклад, це можна зробити за допомогою програми Fusion (фірми BitArts).


Існує думка, що додатки Visual Basic - це не повноцінні програми, а лише псевдокод, який під час запуску виконується інтерпретатором. Це зовсім не так. Якщо ви компілюєте програму в Native Code, то отриманий EXE – це повноцінний додаток Win32, який просто використовує функції msvbvm-бібліотеки. А от P-Code є псевдокодом. Вид компіляції ви можете вказати в меню Project->Project Properties...


Середовище Visual Basic може з успіхом використовуватися користувачами-початківцями для пізнання секретів програмування і захоплюючих занять по створенню нескладних (для початку) додатків і, у той же час, надає потужні інструменти розробки досвідченим програмістам. Розвинута довідкова система дозволить при створенні додатка і роботі в Visual Basic знайти вихід з будь-якої ситуації та одержати відповідь на будь-яке питання. Починати працювати з Visual Basic можна практично з будь-яким рівнем підготовки.


^ Visual Basic доступний у трьох редакціях, кожна з яких забезпечує певний набір інструментів розробки. Це:


- Standard Edition


Visual Basic Standard Edition дозволяє створювати досить потужні додатки для Microsoft Windows 95 і Windows NT. Ця редакція включає всі вбудовані елементи керування Visual Basic, включаючи зв’язані (data-bound) елементи керування.


- Professional Edition


Редакція Professional забезпечує повний функціональний набір інструментальних засобів для розробки професійних рішень, призначених для тиражування. Вона включає всі можливості Standard Edition плюс додаткові елементи керування Active, включаючи елементи керування для Internet і генератор звітів Crystal Reports для Visual Basic (розглядається в главі 5).


Примітка: Елемент керування Active - це об’єкт, який можна розміщувати на формі для активації або розширення взаємодії користувача з додатком. З елементами керування Active асоціюються певні події, і вони можуть бути включені в інші елементи керування. Ці елементи керування мають розширення імені файлу .осх.


- Enterprise Edition


Редакція Enterprise дозволяє створювати розподілені додатки силами групи розробників. Вона забезпечує всі можливості редакції Professional і включає також додаткові функції, такі, як Automation Manager, Component Manager, інструментальні засоби керування базами даних і Microsoft Visual SourceSafe — проектно-орієнтована система керування версіями продуктів.


Йдемо далі. Отже, що ж може Visual Basic?


^ Урок № 2. Що може Visual Basic?


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


На Visual Basic можна написати будь-яку програму, - починаючи від програми, яка обслуговує рутинні операції введення даних, до складних інформаційних та комунікаційних систем. У США 60% програмних продуктів написані на Visual Basic. Є звичайно дуже невеликі обмеження, наприклад, на Visual Basic не можна написати повноцінну DLL бібліотеку, драйвер пристрою VXD, також у Visual Basic не можна використовувати ассемблер. Але коли вам знадобляться ці речі, ви зможете написати їх на іншій мові і, потім, використовувати їх у Visual Basic. Так що можливості Visual Basic дуже великі!


Тепер можна приступати до інсталяції та налаштування Visual Basic!


^ Урок № 3. Інсталяція та налаштування Visual Basic


Інсталяція Visual Basic не відрізняється особливою складністю, все відбувається стандартно. В процесі інсталяції вас попросять вказати компоненти, які будуть встановлені на ваш комп’ютер. Якщо на вінчестері є місце, то краще вибрати всі компоненти, щоб потім їх не довелося додавати. Варто відзначити той момент, що версія VB 5.0 поставляється з файлами допомоги (приблизно 15 Мб), а допомога для VB 6.0 йде в комплекті з MSDN, який поставляється на трьох дисках. Тому якщо у вас є шоста версія, записана на одному диску, то будьте впевнені, допомоги там не буде. Але цілком спокійно можна взяти допомогу від п’ятої версії і використовувати її для VB 6.0. Після інсталяції та налаштування Visual Basic обов’язково перезавантажте комп’ютер.


Отже, комп’ютер перезавантажений. Перед роботою з Visual Basic його необхідно налаштувати. Для цього запустіть Visual Basic (Пуск->Програми->Microsoft Visual Basic 6.0->Visual Basic 6). Зайдіть у меню Tools->Options. Поставте галочку “Require Variable Declaration”. Це позбавить Вас від зайвих помилок при автоматичному визначенні змінних. Далі на вкладці Editor Format, у списку Font укажіть Courier New Cyr. Якщо цього не зробити, то VB не буде коректно відображати кирилицю. Також рекомендую установити колір зарезервованих слів у яскраво-синій. Для цього виберіть у списку Code Colors Keyword Text і в поле Foreground укажіть яскраво-синій колір (сьомий знизу). От і все! Visual Basic готовий до роботи!


Наступний урок призначений для тих, хто ніколи не програмував. Якщо ви знайомі з програмуванням, то можете сміливо пропустити цей урок.


^ Урок № 4. Для тих, хто ніколи не ...


Цей маленький урок для тих, хто ніколи не програмував. Хоча таких людей не існує! Адже ви програмуєте свою поведінку з огляду на різні варіанти подальшого ходу подій і змінюєте “програму” у залежності від обставин. Наприклад, якщо ви занедужали, то Ви напевно не підете на роботу (або в школу) і т.п. Вся відмінність життєвої програми від програмування на комп’ютері складається в рівні формалізації порядку дій, які необхідні для досягнення результату. Адже комп’ютер - це машина, вона не зрозуміє вас з півслова, більше того, він узагалі вас не може розуміти! Він тільки виконує закладені в нього інструкції і команди для роботи з двійковими числами.


Для написання більш-менш складної програми необхідно спочатку скласти умовну послідовність дій на папері. Наприклад, “як зварити борщ?”:


^ Життєвий варіант програми:


Купити на ринку овочів (подешевше), сметани, все почистити, порізати, налити води, поставити на плиту і варити півгодини. Ще не забути посолити.


Формалізований варіант (Алгоритм):

Для всіх продавців овочів від першого до останнього

Якщо овочі в даного продавця дешевше, ніж у раніше перевірених, то записати його номер на папірець замість раніше на ньому записаного

Наступний продавець (див. п.2, якщо вони ще залишилися)

Купити овочі в продавця з номером, записаним на папірці

Купити сметану

Виконувати очищення овочів, поки видно шкірку та пошкодження

Збільшуємо шар, що зрізується, на міліметр

Повернення і перевірка умови в п.6

Для всіх куплених овочів від першого до останнього

Розділити плід на 40 частин

Наступний (див. п.10, якщо вони ще залишилися)

Помістити в каструлю. Налити води, включити газ

Таймер включити

Якщо таймер показує, що пройшло півгодини, то газ виключити

Якщо сіль відсутня в готовому продукті, то перейти до обробки помилки по п.16, інакше перейти до п.17

Ввести сіль

Кінець роботи програми


Простота написання програм на бейсік полягає в тому, що як команди він використовує англійські слова, які еквівалентні українським із формалізованого варіанта, тобто якщо перекладач, не знайомий з інформатикою, переведе його на англійський, то вийде програма на бейсік. Працювати вона не буде. Закон програмування каже: “Жодна, навіть найпростіша програма, не працює відразу після написання”. Будь-яку програму необхідно налагоджувати (debug (bug-жук) - обезжучувати). На цей рахунок є ще один закон: легше написати свою власну програму, чим розбирати та виправляти чужу. Налагодження програми по відчуттях нагадує проштовхування важкої вантажівки по розмитій дорозі: у хід йдуть одні дошки, камені і лопата, і так доти, поки програма не почне правильно працювати. Якщо говорити мовою алгоритму, то вийде наступне:

Запустити програму

У випадку збою або неправильної роботи знайти причину помилки

Усунути помилку, намагаючись не внести нових

Продовжувати по п.1 доти, поки не будуть усунуті всі помилки


Якщо Ви засвоїли вищевикладений матеріал, то можете переходити безпосередньо до вивчення мови Visual Basic. А для цього переходимо до п’ятого уроку.


^ Урок № 5. Етапи розробки додатка


У Visual Basic, як і в багатьох інших мовах, призначених для написання додатків під Windows, використовується подійно-керована модель програмування. У “старих” версіях бейсика, таких як QBasic, використовувалася так звана “плоска” структура написання програми. Кожна програма починалася і закінчувалася у певних місцях. Вся програма виконувалася послідовно, і іноді, можливо, викликалися користувальницькі процедури і функції. Тобто, якщо програму “запускали”, то вона відразу починала виконуватися, і, дійшовши до кінця, завершувалася. У Visual Basic це відбувається зовсім інакше. Справа в тому, що ОС Windows має GUI (Graphical User Interface), тобто графічний інтерфейс користувача, у якому використовуються снандартні елементи керування, такі, як вікна (вони ж форми), кнопки, списки, поля для введення тексту і т.п. У будь-якій мові високого рівня програма будується на основі цих елементів. Отже, розробка додатка на VB складається з наступних етапів:

продумати програму (продумати, що саме програма повинна робити, які саме задачі повинна вирішити, реалізувати їх подумки, продумати структуру даних, і т.д.).

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

написання програмного коду, який поєднує розміщені на формі керуючі елементи, тобто “нарощування плоті на кістяк”.

наладка програми. Цей етап часто займає більше часу, чим попередні.

остаточна компіляція і, якщо це необхідно, створення дистрибутива (тобто інсталяційного файлу setup.exe).


Ці етапи завжди необхідно тримати в пам’яті, оскільки вони використовуються при написанні будь-якої програми. Порядок етапів теж важливий. Наприклад, не можна спочатку написати код програми, а тільки потім розробляти інтерфейс користувача (є звичайно рідкісні винятки, наприклад, коли програма взагалі не має інтерфейсу, або коли ви пишете процедуру, незалежну від інтерфейсу програми). Описувати перший етап не має смислу, тому що він цілком зрозумілий. Зупинимося докладніше на другому етапі.


^ Урок № 6. Структура проекту Visual Basic


Перед розглядом питання проектування інтерфейсу додатка на Visual Basic, необхідно уявляти, з чого взагалі складається цей проект?


^ У Visual Basic будь-який проект складається з наступних файлів:

файл кожної форми (розширення frm). Це звичайний ASCII текстовий файл, у якому записаний весь код, розташований на формі, а також властивості всіх розміщених на формі елементів керування і самої форми теж.

файл кожної форми, який містить бінарну інформацію (наприклад картинку в PictureBox) (розширення frx)

файл проекту, який містить інформацію про проект (розширення vbp)

інформація про робочу область проекту (workspace) (розширення vbw)


^ Це необхідний мінімум. (Хоча, бувають і винятки, наприклад, коли в проекті не використовуються форми. Тоді замість frm файлу, буде bas файл.)


Далі перелічимо додаткові файли, що можуть бути підключені до проекту:

файл кожного модуля (розширення bas). Це текстовий файл.

файл кожного модуля класів (розширення cls). Це текстовий файл.

файл кожного додаткового елемента керування (розширення ctl). Це також текстовий файл.

файл ресурсів (розширення res).

інші файли (ocx, tlb, і т.д...).


Запам’ятовувати призначення всіх цих файлів не обов’язково, досить запам’ятати 2 файли:

frm-файл, у якому зберігаються код форми і властивості всіх роміщених на даній формі елементів керування.

bas-файл - модуль. У ньому можуть бути оголошені глобальні змінні, константи, функції і т.д. Коротше, тільки код. Без елементів керування.


Тепер, приблизно уявляючи структуру проекта на Visual Basic, можна переходити до розгляду питання проектування інтерфейсу.


^ Урок № 7. Середовище розробки Visual Basic


Для того, щоб зрозуміти як проектувати інтерфейс, розглянемо спершу середовище розробки Visual Basic. Запустіть на виконання Visual Basic. Перед вами з’явиться віконце, у якому Вас попросять указати тип проекту. Укажіть тип “Standart EXE” і натисніть ОК. На екрані Ви побачите наступне вікно:





У лівій частині розташована панель з доступними елементами керування, з якої Ви можете перетаскувати потрібні елементи на форму. У центрі знаходиться форма (вікно) Вашого додатка. Ім'я нової форми - Form1. Угорі розташована панель інструментів середовища розробки. Праворуч розташовані вікна проекту (Project) і властивостей поточного об’єкта (Properties). Тут необхідно відзначити, що всі об’єкти в Visual Basic (втім як і в інших мовах високого рівня) мають властивості і методи. Властивості — значення, що встановлюються для визначення виду і поводження об’єкта. Методи — програмні процедури, що забезпечують виконання об’єктом деяких визначених дій. Наприклад, форма забезпечує метод Show, що обумовлює виведення форми на екран. Головна перевага роботи з об’єктами в тому, що об’єкти забезпечують програмний код, який уже не потрібно писати розробнику. Йому просто потрібно установити властивості об’єкта і викликати методи об’єкта, щоб примусити об’єкт виконати необхідні функції. Деякі властивості можна відредагувати тільки в період виконання програми (RunTime). Багато об’єктів мають однакові властивості. Наприклад, властивість Caption. У форми (Form) Caption - це заголовок вікна, а в елемента мітки (Label) - це текст усередині мітки. Поступово Ви звикнете до таких позначень і згодом зможете розібратися з кожним, незнайомим вам елементом керування.


^ Отже, для того щоб помістити на форму потрібний вам елемент, необхідно проробити наступне: натиснути мишкою на потрібний Вам елемент на панеле ліворуч, наприклад, на кнопку (Command Button). Після натискання кнопка виявиться втисненою. Тепер помістіть курсор миші на форму і розтягніть мишкою прямокутник. У результаті цих маніпуляцій у Вас на формі з’явиться кнопка, яка має розміри прямокутника. Якщо Вам знадобиться змінити розміри кнопки, то необхідно виділити кнопку натисканням лівої кнопки і розтягнути кнопку за маркери, розташовані на вершинах кнопки. Перемістити кнопку в інше місце можна звичайним перетаскуванням (Drag&Drop). Необхідно відзначити, що не всі елементи керування мають розміри. Наприклад, Timer. Такі елементи не видно в процесі роботи додатка, але вони виконують певні функції.


Щоб змінити властивості елемента керування необхідно виділити його та змінити потрібну властивість у вікні Properties. Давайте, приміром, поміняємо заголовок форми. Клацніть лівою кнопкою миші в будь-яке місце форми та знайдіть у вікні Properties властивість Caption. Змініть її, наприклад, на “Це моя перша форма”. Заголовок буде мінятися в міру введення тексту.


Тепер давайте запустимо програму. Для цього натисніть на кнопку Start, розташованої на панелі інструментів і кнопки, що має іконку Play (як на магнітофоні). Після нетривалої компіляції, перед вами з’явиться вікно вашої програми! Причому ви можете його пересувати, змінювати розміри, мінімізувати! І все це без єдиного рядка коду! Фантастика! :)


Тепер закрийте програму. Це можна зробити двома способами - натиснути на хрестик у правому верхньому куті форми або натиснути на кнопку End, яка має іконку кнопки Stop.


Після закриття програми Ви повернетеся в середовище розробки VB. До речі, зверніть увагу на віконце Project. У ньому показаний тільки один файл - Form1. Давайте додамо ще одну форму до нашого проекту. Для цього виберіть у меню Project->Add Form. Перед Вами з’явиться вікно Add Form, у якому вам запропонують вибрати вид нової форми. Двічі клацніть на іконці з написом Form. Перед вами з'явиться нова форма. Її ім'я Form2. Але куди ж ділася стара, запитаєте ви? Для того, щоб побачити нашу стару форму, потрібно двічі клацнути по рядку Form1 у вікні Project. Клацнувши, Ви відразу побачите нашу першу форму. Зверніть увагу на 2 кнопочки у вікні Project. View Object і View Code. Ці кнопочки Вам будуть в майбутньому дуже потрібні. За допомогою них Ви зможете переключатися між двома режимами:

переглядом форми, для проектуванням її інтерфейсу

переглядом коду форми


Натисніть на кнопку View Code. Якщо Ви налаштували Visual Basic, згідно рекомендацій, поданих в третьому уроці, то в коді Ви побачите тільки одку рядок:


Option Explicit


Цей рядок виділений синім кольором, тому що це зарезервоване слово Visual Basic. Якщо такий рядок є на початку модуля, то змінні не можна буде використовувати доти, поки вони не оголошені оператором Dim (як у C).


Тепер давайте збережемо наш проект. Для цього натисніть на кнопку Save Project (на панелі п’ята). Вас попросять вказати каталог для збереження й ім’я файлу для форми №1 (Form1.frm). Потім файл Form2.frm. І нарешті файл Project1.vbp (vbp - Visual Basic Project). Усі, проект збережений. Тепер ви зможете відкрити його надалі кнопкою Open Project. Відкривати потрібно файл із розширенням vbp (Visual Basic Project). Тут можу дати одну дуже важливу пораду - частіше зберігайте результати Вашої роботи! Все може бути... То з Windows проблеми, то світло виключать...


Як бачите, нічого складного. Просто потрібно звикнути до інтерфейсу середовища Visual Basic. На цьому ми закінчимо цей урок. Як домашнє завдання, додайте до проекту модуль (Project->Add Module). І збережіть проект.


У наступному уроці Ви довідаєтеся, як приємно редагувати код у Visual Basic.


^ Урок № 8. Легкість роботи з кодом у Visual Basic


У цій маленькій главі я б хотів розповісти про легкість роботи з кодом у Visual Basic.


Intellisence

Технологія Intellisence сильно полегшить вам життя в процесі програмування на Visual Basic. Ця технологія Microsoft дозволить вам уникнути введення великої кількості коду і його коректування. Intellisence виводить невелике спливаюче вікно з корисною інформацією про поточний об’єкт. Напевно ви вже бачили таке вікно. Такі вікна бувають 3-х видів:

- QuickInfo. Видає інформацію про синтаксис поточного оператора Visual Basic. Де б ви не ввели ім’я оператора (функції) і поставили після імені пробіл або октрывающую круглу дужку, то Visual Basic негайно покаже інформацію про синтаксис цього оператора. От приклад:





- List Properties/Methods. Ця властивість полегшить вам роботу з об’єктами в Visual Basic. Після того, як ви поставите крапку після імені якого або об’єкта, Visual Basic відразу ж покаже вам список усіх доступних властивостей і методів цього об’єкта:





Властивості мають іконку: , а методи - .


- Available Constants. Ця функція виводить вікно доступних констант. Наприклад, якщо Ви поставите знак рівності після Boolean змінної, то Visual Basic видасть вам вікно, де ви зможете вибрати з двох значень (True/False) потрібне. Вам навіть не прийдеться нічого набирати на клавіатурі!


Також, Якщо натиснути Ctrl+J, те Visual Basic видасть список усіх визначених у програмі властивостей, методів, констант, типів і т.д, включаючи убудовані в сам Visual Basic.


Також для новачків може бути корисна функція Auto Syntax Check, яку можна включити в Tools->Options. Якщо галочка коштує, то Visual Basic буде стежити за правильністю набраного коду в Visual Basic. Якщо ми наберете рядок невірно, то Visual Basic попередить вас про цьому, видавши вікно з повідомленням.


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


Dim myVar As String


А потім у коді програми введете:


^ MYVAR = "VB"


То після того, як курсор редагування перейде на наступний (або просто інший) рядок, Visual Basic змінить код у такий спосіб:


myVar = "VB"


Тобто ім’я змінної завжди буде написано так, як визначено в операторі Dim. Це дуже хороша функція Visual Basic.


Також Visual Basic підсвічує кольорами певні ділянки коду. Синім кольором виділяються зарезервовані слова Visual Basic. Синьо-зеленим кольором (якщо його можна так назвати) коментарі, інше чорним. Коментарі - це усе, що знаходиться після символу ’ (апостроф). При компіляції коментарі іґноруються, але при перегляді коду вони дуже корисні. Раджу коментувати код, особливо в тих місцях, де сам чорт зломить ногу! ;). Приклади підсвітки:


Dim prgVariable As Long ’ це коментар


Відступи


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


If Form1.Visible = False Then

If a = b Then

For c = 1 To 5

If b > c Then Exit Sub

Next c

End If

End If


Погодитеся, зрозуміти в такому коді що виконується після чого - досить складно. Але якщо ми поставимо відступи, то все відразу стане зрозумілим!:


If Form1.Visible = False Then

&nbspIf a = b Then

&nbspFor c = 1 To 5

If b > c Then Exit Sub

&nbspNext c

End If

End If


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


Visual Basic надає можливість зробити відступ відразу для ділянки коду. Для цього необхідно виділити цю ділянку (кілька рядків) і натиснути Tab. Усі виділені рядки змістяться вправо. Якщо Вам необхідно змістити код уліво, натискайте Shift+Tab. Завжди пам’ятайте про відступи!


Далі ще цікавіше!


^ Урок № 9. З чого складається код?


Отже, ми навчилися проектувати інтерфейс програми. Але для повноцінної програми цього не досить. Потрібно написати код програми, що буде маніпулювати елементами керування і робити певні обчислення. Це самий складний етап.


^ В усіх мовах високого рівня програмний код складається з:

Змінних

Виразів

Операторів

Керуючих структур

Функцій

Класів і об’єктів


^ Опишемо кожен тип докладніше:


Змінні


У Visual Basic змінні зберігають інформацію (значення). При їхньому використанні Visual Basic резервує область у пам’яті комп’ютера для збереження даної інформації. Кожна змінна має своє ім'я. Воно може досягати 255 символів у довжину, починається завжди з букви латинського алфавіту, після якої можуть бути інші букви, цифри і знак підкреслення. Регістр символів значення не має. Приведемо кілька прикладів імен змінних:


numOfLetters - підходить

2Bottle - невірно, тому що починається не з букви

ThisIsVeryLongName - підходить, довжина 18 символів

sng.Cos - не підходить, тому що використовується крапка


Іменування змінних і функцій надзвичайно важлива справа. Я рекомендую дотримуватись угорської угоди:


Тип

Схема іменування

Приклад

Константа

Ім’я константи повинно складатись лише із заглавних букв

HWND_BROADCAST

Змінна

Ім’я змінної повинно починатись лише з маленької букви, а далі наступні слова – з вкликої

numOfFonts

Функція

Ім’я функції повинно починатись із заглавної букви, далі наступні слова також із заглавної

SetForegroundWindow


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


Кожна змінна має визначений тип. ^ Всього Visual Basic 14 типів змінних. Крім того, програміст може визначити і свій тип. Перелічимо основні типи змінних VB:


Byte - призначений для збереження цілих чисел від 0 до 255. Якщо змінній такого типу привласнити значення, що виходить за ці межі, то Visual Basic згенерує помилку.


Integer - призначений для збереження цілих чисел у діапазоні

-32768 до +32767, тобто розмір пам’яті, який виділяється під таку змінну складає 2 байти. (256*256=65536). Символ для позначення - "%". Навіщо він потрібний, ми розглянемо далі.


Long - призначений для збереження цілих чисел у діапазоні

-2147483648 до +2147483647, тобто розмір пам’яті, який виділяється під таку змінну складає 4 байти. (65536*65536=4294967296). Символ для позначення - "&".


String - призначений для збереження строкової (символьної) інформації, простіше кажучи - тексту. Може зберігати до 2 Гб тексти. Символ для позначення - "$".


Single - призначений для збереження дробових чисел, з точністю до 7 цифр. Діапазон негативних значень від -3.402823Е38 до -1.401298Е-45. Діапазон позитивних значень від 1.401298Е-45 до 3.402823Е38. Довжина числа може досягати 38 знаків. Займає 4 байти пам’яті. Обчислення з даними змінними будуть приблизними і менш швидкими, чим із змінними цілого типу. Символ для позначення - "!".


Double - призначений для збереження дробових чисел, з точністю до 16 цифр. Діапазон негативних значень

від 1.79769313486232Е308 до -4.94065645841247Е-324.

Діапазон позитивних значень

від 4.94065645841247Е-324 до 1.79769313486232Е308.

Довжина числа може досягати 300 знаків. Займає 8 байтів пам’яті. Обчислення з даними змінними будуть приблизними і менш швидкими, чим із змінними цілого типу. Використовується для наукових розрахунків. Символ для позначення - "#".


Currency - Даний тип створений для того, щоб уникнути помилок при перетворенні чисел з десяткової форми в двійкову і навпаки (Неможливо представити 1/10 як суму 1/2, 1/4 і т.д). Даний тип може мати до 4 цифр після коми, і до 14 перед нею. Усередині даного діапазону обчислення будуть точними. Обчислення виконуються так само повільно, як і у випадку змінних Single і Double. Даний тип дуже добре підходить для фінансових розрахунків. Символ для позначення - "@".


Date - Цей тип даних дозволяє зберігати значення часу і дати в проміжку від напівночі 1 січня 100 року до напівночі 31 грудня 9999 року. Якщо змінній присвоюється тільки значення дати, то час дорівнює 00:00.


Boolean - дуже важливий і розповсюджений тип даних. Дозволяє зберігати так звані булеві значення, тобто тільки два значення - True і False. (українською - Правда і Неправда). Використовується тоді, коли Вам потрібно зберігати тільки значення Так чи Ні.


Variant - Змінна типу Variant може містити дані будь-якого типу. Visual Basic автоматично робить необхідні перетворення даних, тому не варто турбуватися про це. Використання такого типу даних сповільнює роботу програми, тобто потрібен час і ресурси для перетворення типів. Тому рекомендую завжди утримуватися від застосування цього типу даних, за винятком специфічних випадків, наприклад, повернення функцією масиву можливо тільки при використанні типу Variant.


У Visual Basic змінні оголошуються за допомогою оператора Dim, після якого проставляється As та Ім’я_Типу змінної. Наприклад:


Dim a As Long

Dim b As Byte

Dim c As Long

Dim numOfLetters As Long

Dim myString As String

Dim isLoaded As Boolean


Якщо не вказувати As Ім’я_Типу, то змінна буде оголошена як Variant.


Після оголошення змінної їй привласнюється значення за замовчуванням. Для рядка це - "" (порожній рядок). Для чисел - 0. Для Boolean - False. Змінна може бути використана відразу після оголошення.


Змінні можна повідомляти й в одному рядку, розділяючи оголошення комами:


Dim a As Long, Dim b As Integer


Тут дуже важливо помітити наступну особливість. Логічно було б оголосити 3 змінні типи Long у такий спосіб:


Dim a, b, c As Long


Така звичка могла перейти, наприклад, з мови C. Там усі змінні дійсно мали б той тип, що зазначений після останньої змінної. Але не в Visual Basic! У результаті такого оголошення Visual Basic оголосить 3 змінні, перша і друга будуть мати тип Variant, і тільки третя - Long! Запам’ятаєте це! А взагалі, краще повідомляти кожну змінну в окремому рядку. І, якщо необхідно, те логічно відокремити ці оголошення можна просто вставивши порожній рядок між тими оголошеннями, що ви хочете відокремити логічно. Наприклад, так:


Dim a As Long

Dim b As Long


Dim myString1 As String

Dim myString2 As String


Такі логічні пробіли між рядками необхідні для рятування коду від його монотонності.


Привласнити значення змінної можна за допомогою знака дорівнює “=”. Наприклад:


a = 1234567

b = 234

c = 133

myString = “Visual Basic рулить”

isLoaded = True


У даному прикладі змінним привласнювалися константи. Але часто буває необхідно привласнити одній змінній значення іншої. Це робиться в такий спосіб:


a = b

' можна, тому що змінна b “уміщається”

' у тип Long (234<4294967296)


a = b + c

' тепер у a зберігається сума b + c.


b = c

' теж можливо (133 < 255)


b = a

' не можна, тому що змінна a не укладається

' у діапазон [0-255]. Відбудеться помилка.


myString = a

' Visual Basic сам перетворить число 1234567

' у рядок “1234567”, а потім привласнить це значення

' змінної myString. Також можливо зворотна дія.


isLoaded = True

' всі ОК


myString = myString & “однозначно!”

' тут відбувається злиття двох рядків, у результаті чого

' змінна myString містить рядок:

' “Visual Basic рулить однозначно!”.


isLoaded = a

' можливо, тому що Visual Basic сам перетворить тип Long

' у тип Boolean. isLoaded буде містити True.

' Чому не False?

' Тому, що в VB False - це нуль, а будь-яке,

' не нульове значення - True


Вище, при описі типів змінних я вказував символ для позначення. Цей символ можна (а іноді і потрібно) використовувати для оголошення змінної, але без використання зарезервованих слів As Тип. Т.е. до приклада:


Dim myLongParam&

Dim myString$


Тут оголошені 2 змінні, перша має тип Long, друга - String. Також можна використовувати ці спеціальні символи для явного зазначення типу константам, наприклад:


Call MyProc (myParam1, myParam2, 5&)


Тут, при виклику процедури MyProc, останній параметр має тип Long. Якби ми не вказали значок &, то він (параметр) мав би тип Byte. Це необхідно при використанні API функцій.


Вище я вже відзначав, що Visual Basic досить часто, непомітно для розробника, займається перетворенням типів змінних автоматично. Приміром, ми розглядали такий приклад:


myString = a


Змінна a має тип Long, а myString - String. Visual Basic сам перетворить змінну a у тип String, а потім привласнить значення змінної MyString. Це необхідно знати. Також, Visual Basic надає у Ваше розпорядження кілька функцій перетворення типів: CLng, CBool, CDate, CStr і т.д. Кожна функція перетворить вираз до відповідного типу. Розглянемо розповсюджену помилку програміста на Visual Basic. Нехай у нас є код типу:


Dim a As Byte

Dim b As Byte

Dim c As Long


a = 200

b = 200


c = a + b


Здавалося б, що якщо запустити такий код на виконання, то в змінній c буде знаходитися значення 400 (200 + 200). Але ні! Visual Basic на рядку c = a + b згенерує помилку Overflow (Переповнення). Справа в тому, що у виразі праворуч від знака дорівнює складаються 2 змінні типи Byte, і Visual Basic вирішує, що після обчислення цього виразу має залишитися той же тип - Byte. Але якщо згадати те, що тип Byte може зберігати значення в діапазоні 0-255, можна зрозуміти чому Visual Basic генерує Overflow (Переповнення). 400 далеко виходить за діапазон Byte... Тут може виникнути питання: “А як же бути? Повідомляти змінні a і b типом Long?”. Можна зробити і так. А можна скористатися функцією перетворення типу CLng. Тоді працездатний код буде виглядати в такий спосіб:


Dim a As Byte

Dim b As Byte

Dim c As Long


a = 200

b = 200


c = CLng(a) + CLng(b) 'Усі в порядку, 400 - входить у тип Long


^ Трохи про константи


У Visual Basic можна оголошувати не тільки змінні, але і константи. Константа як і змінна, також зберігає певне значення, але на відміну від змінної збережене значення не може змінюватися. Щоб оголосити константу необхідно використовувати зарезервоване слово Const, за яким випливає ім’я і значення (і можливо тип) константи:


Const PI = 3.1415


В даному прикладі оголошена константа з ім’ям pi і значенням 3.1415. Після оголошення вона може бути використана по призначенню.


Можна відзначити наступну особливість Visual Basic: для констант із плаваючою крапкою тип за замовчуванням - Double, для цілих чисел - Integer. (Це легко можна перевірити вбудованою функцією Visual Basic - VarType). Для того, щоб явно задати тип константи, необхідно після імені задати тип, наприклад:


Const PI As Long = 3 ' PI = 3, PI має тип Long


У Visual Basic існує дуже багато вбудованих констант, які з легкістю можуть бути використані у Ваших програмах. Наприклад, константа vbNewLine - містить 2 символи, з ASCII кодами 13 і 10, тобто перехід на новий рядок. Список констант можна подивитися в Object Вrоwsеr'е. Для його виклику необхідно натиснути F2, знаходячись у середовищі Visual Basic.


“^ Видимість” змінних:


Оголошувати змінні можна в самих різних місцях:

- Всередині процедури (або функції). У цьому випадку змінну буде “видно” тільки в коді цієї процедури (або функції). Якщо Ви спробуєте звернутися до такої змінної всередині коду іншої процедури, то Visual Basic згенерує помилку.


- В самому верху коду форми, тобто відразу після оператора Option Explicit. Це місце називається розділом General Declarations (розділ Глобальних Оголошень). Такі змінні буде “видно” у будь-якому місці коду форми. Тобто у будь-якій процедурі (або функції) форми. Змінні в даному місці можуть бути оголошені за допомогою зарезервованих слів Private і Public. Розглянемо три визначення:


Dim myLocalVar1 As Byte

Priv
еще рефераты
Еще работы по разное