Основи Visual Basic 50

[ виправити ] текст може містити помилки, будь ласка перевіряйте перш ніж використовувати.

скачати

У додатках VB 5.0 виконувані рядки повинні розміщатися усередині процедур або функцій. Оператори в VB рідко використовують номери рядків, а будь-які з них зазвичай починаються з нового рядка. Рядки обмежені довжиною в 1023 символу. можна розширювати рядка, використовуючи символ "_" після пробілу в кінці рядка. Кілька операторів можна об'єднувати в одному рядку, розділяючи їх ":".

Коментарі задаються верхній лапками ('), або оператором REM. Коментар може бути виведений окремим рядком, або в кінці рядка. У другому випадку краще використовувати лапки ('), ніж REM, тому що REM тут потребує роздільника (:). Наприклад,

DIM FARENG 'змінна для обчислення t0 за Фаренгейтом

або

DIM FARENG: REM змінна для обчислення t0 за Фаренгейтом

Оператор End - програма зупиняється. Після оператора End закриваються всі вікна, відкриті програмою, а сама вона стирається з пам'яті. Всередині програми VB може бути скільки завгодно операторів End, але звичайно краще використовувати тільки один оператор End у процедурі обробки подій QueryUnload для основної форми. У цьому випадку всі оператори End замінюються на Unload Me, який викликає собі QueryUnload для форми.

Одним з основних операторів є привласнення значення змінним і установка значень властивостей.

Наприклад,

1) Result = 0.5? 20

ім'я значення

змінної

Можна використовувати оператор LET

2) об'ект.свойство = значення

txtDisplay.Text = ""

Властивості за замовчуванням

У будь-якого об'єкта VB є властивість за замовчуванням. Наприклад, для текстового поля це властивість Text. При посиланні на дану властивість можна не вказувати його ім'я.

Наприклад, txtDisplay = "Привіт!"

Деякі властивості можуть приймати значення TRUE або FALSE. У VB5 є вбудовані константи для позначення цих властивостей, наприклад, cmdExit = False буде приховувати командну кнопку, поки не з'явиться вираз cmdExit = True.

Усередині себе VB використовує значення 0 для False і -1 для True (чи будь-яке ненульове значення).

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

cmdExit.Visible = Not (cmdExit.Visible).

Змінні. Імена змінних менше 255 символів починаються з літери, за якою слідують інші літери, цифри або символ "_". Регістр значення не має. В якості імен змінних не можна використовувати зарезервовані слова, наприклад, Print. Прийнято використовувати змішаний регістр при завданні імен змінних, що складаються з декількох слів, наприклад, CurrentValue.

Типи змінних. Використовується 14 стандартних типів змінних. Можна визначити і власний тип. Основні типи:

String - рядкові змінні. Для позначення цього типу можна додати символ "$" до кінця імені.

Наприклад, Message $ = txtDisplay.Text

Integer - цілочисельна змінна в діапазоні -32768? +32767. Для позначення в кінці імені додається "%" арифметичний оператор виконується швидко.

Наприклад, IntVar% = 5

LongInteger - довге ціле від -2147483648 до +2147483647. Позначається "&".

LongInt & = 123456789.

SinglePrecision зберігає дробові числа з точністю до 7 цифр. Для на чисел може досягати 38 знаків з позначенням "!". Обчислення год даними змінними буде приблизним.

DoublePrecision "#". Числа з точністю до 16 цифр і довжиною до 300 символів. Обчислення теж приблизні, а швидкість невелика. Використовується для наукових розрахунків.

Currency - використовується при перетворенні десяткових чисел в двійкову форму і навпаки. Позначення - "@". Може мати до 14 цифр до коми і до 4 цифр - після. Використовується для фінансових розрахунків.

Date - значення дати і часу від 00 час.1 января.100 року до 00час.31 декабря.9999 р. Значення позначається "#".

Time = # May 5, 1999 #

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

Variant - дані будь-якого типу. Якщо VB не знає тип даних, що приймаються, використовується цей тип. Використання його уповільнює роботу програм, тому що вимагає часу і ресурси для операцій перетворення типів.

На відміну від інших версій Basic в одній програмі не можна використовувати одні й ті ж імена змінних, що відрізняються тільки типом. Наприклад, A% і А!

При першому використанні змінної VB тимчасово привласнює змінною тип Variant і пусте значення. Це значення зникає в той момент, коли змінної присвоюється реальне. Будь-який тип даних має своє "порожнє" значення. Для String це рядок нульової довжини "". Для чисельних змінних це 0.

Можна не використовувати ідентифікатори для позначення типу змінної, а використовувати оператор Dim. Оператор Dim служить для оголошення типів змінних.

Dim Years As Integer

Dim Amount As Currency

. . . .

Оголошення можна комбінувати в одному рядку.

Dim Years As Integer, Amount As Currency

Dim Result без типу присвоює змінної тип Variant.

Якщо в програмі використовуються неоголошені змінні, легко допустити помилку при написанні їх імені. У цьому випадку використовується примусове оголошення змінних за допомогою оператора Option Explicit. Цей оператор не використовується в конкретних процедурах обробки подій, а розміщується в розділі General форми, щоб бути доступним всім процедурам обробки подій. Після того, як VB зустрічає оператор Option Explicit, він не дозволяє більше використовувати неоголошені змінні. Цей оператор можна використовувати для зміни значень за замовчуванням.

Область видимості змінних

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

Іноді необхідно, щоб яка-то змінна була доступна всім процедурам форми. Такі змінні називають змінними рівня форми або модуля. Змінні рівня форми також оголошуються в розділі General за допомогою операторів Private або Dim.

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

Це робиться в розділі Declarations будь-якого модуля коду:

Public Amount As Single

або Global Amount As Single

Коли VB викликає процедуру обробки події, старі значення локальних змінних знищуються. Вони приймають значення за замовчуванням. Такі змінні називаються динамічними. Але в деяких випадках необхідні статичні змінні, які не инициализируются повторно при виклику процедури. Часто такі змінні використовуються для лічильників, їх використовують, щоб зробити елементи управління видимими або невидимими. Щоб оголосити статичну змінну всередині процедури необхідний оператор Dim замінити на Static.

Static Amount As Single, Is_Visible As Boolean.

Якщо необхідно, щоб всі змінні в процедурі були статичними, необхідно додати

Static Private Sub cmdLom_Click ()

Рядки

Операція конкатенації для складання кількох рядків + або &

Наприклад, A $ = "Іванов"

B $ = "Іван"

C $ = "Іванович"

D $ = A $ & B $ & C $

або D $ = A $ + B $ + C $

Відмінність. За допомогою "&" можна об'єднувати рядкові та інші види. Наприклад, C = A% & B $, зміниться їх тип на Variant.

Для переходу до нової рядку при друку символів (переклад каретки) використовується вбудована const VbCrLf. Наприклад, щоб розірвати рядок в інформаційній панелі або в многостроковом текстовому полі можна

Message $ = "1-й рядок"

Message $ = Message $ + VbCrLf + "2-й рядок"

MsgBox Message $

Зауваження. Якщо в програмі використовуються числа і вони не присвоюються змінної Variant, то VB вважає:

Якщо число не має десяткового дробу і лежить в діапазоні від -327 686 +32767, то це Integer.

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

Якщо має десяткову точку і лежить в діапазоні для чисел із звичайною точністю (7 цифр), то це Single divcision.

Якщо має десяткову крапку, але лежить поза діапазону, то це Double divcision.

Такі приблизні розрахунки часто призводять до проблем. Наприклад, VB вважає, що тип результату з двома цілими числами є ціле. Наприклад результат Print 123456? 789 виходить за рамки цілого і виникає помилка переповнювання. Тоді необхідно використовувати ідентифікатор хоча б для однієї змінної Print 123456 &? 789.

Можна також використовувати вбудовані функції для перетворення типів, наприклад, LInt - округлює число до цілого, Clong - до довгого цілого, Cvar - перетворить до Var.

Якщо проводяться операції зі змінними Variant, то не виникає проблем з перетворенням типів.

Крім звичайних, десяткових чисел, VB використовує виконавчі та шістнадцяткові. Останні позначаються з префіксом & H. Наприклад, число 49 = & H31.

Шістнадцяткові цифри використовуються для кодування різних кольорів: будь-якої колірної код складається з 6 шістнадцяткових цифр від & H000000 & = 0 до & HFFFFFF & (довге ціле) (16777215).

Взагалі конкретний колір визначається кількістю червоного R, зеленого G і синього кольорів B у всіляких поєднаннях. У коді кольору VB дві останні цифри означають кількість червоного, дві середні - кількість зеленого, а дві перші - кількість синього, наприклад

& H0000FF & - максимально червоний

& H00FF00 & - максимально зелений

& HFF0000 & - максимально синій

& H000000 & - чорний

& HFFFFFF & - білий

& H00FFFF & - жовтий (червоний + зелений)

& H808080 & - сірий (рівні кількості кольорів)

Константи

Для незмінних значень у програмі використовуються константи. Константи оголошуються аналогічно змінним, за тими ж правилами: ім'я містить не більше 200 символів, перший символ буква. Якщо в програмі використовується тільки одна форма, то константу можна оголосити у розділі DeclarationHous для об'єкта General. Або ж можна і безпосередньо в процедурі, але це гірше. Константу оголошують через зарезервовані слова Const. Наприклад,

Const Pi = 3? 14159

Const Course = "Informatics"

VB5 має тільки набір вбудованих констант, наприклад, VbCrLf або VbOrOnly. Їх можна додавати до тексту програми з вікна Object Browser (F2 або меню View). Щоб вставити Const в програмі:

Курсор повинен бути у вікні коду.

У вікні Object Browser клацнути на кнопці Copy to Clipboard.

Перейти у програмі на місце вставки і натиснути Ctrl + V.

Вбудовані функції

Особливе значення мають строкові функції, тому що в полях введення інформація зберігається в текстовому форматі або у форматі ariant. Використання ж неявних перетворень типів з Variant часто призводить до проблем і є більш повільним.

Строкові функції:

= Space (кількість пробілів) - видає рядок, що складається з одних прогалин, причому число символів у рядку визначається параметром в дужках.

= String (число, рядковий вираз $) - формує рядок, що містить однакові символи.

Наприклад, X $ = String (10, "z") - 10z

= Len (рядковий вираз) - довжина поточного рядка з проблемами і надрукованими символами.

= Mid (рядок, початок [, довжина])

Mid ("Visual Basic", 1,6) = "Visual"

Mid ("Visual Basic", 8,6) = "Basic"

Mid ("Visual Basic", 8) = "Basic"

Приклад. Підрахунок числа точок в рядку

Points% = 0

Length% = Len (Text $)

For I% = 1 to Length%

If Mid (Text $, I%, 1) = "." Then

Points $ = Points $ + 1

End If

Next I%

= Left (дані для, № до позиції)

= Right (рядок, з № позиції)

Функцію Mid можна використовувати для зміни змісту всередині поточного рядка. Наприклад

X $ = "Best Basic"

Mid (X $, 1,5) = "Quick"

яка кількість символів

з якого символу буде взято з нового рядка

вставляється нова

рядок поверх частини старої

= Insert ([початкова позиція], рядок для пошуку, підрядок)

чи є даний рядок частиною іншого рядка, видає номер позиції, з якої починається підрядок.

Text $ = "QuickBasic"

X $ = Instr (1, Text $, "Basic") = 6.

Якщо підрядок не знайдена Instr повертає нульове значення (False).

Приклад.

If Instr (Text $, "?") Then

Print "символ знайдений"

Else

Print "Не знайдено"

End If

= LСase, = UСase - перетворить всі символи рядка в нижній (верхній) регістр

Замість Lcase $ Ucase $

= Str lomp - для порівняння рядків

Нехай X = StrComp (A $, B $)

Основи Visual Basic 5.0

Якщо A $ або B $ порожня, то x = NULL

Якщо використовувати StrComp (A $, B $, 1) - регістр не враховується, а якщо StrComp (A $, B $, 0) - регістр враховується.

= Trim (рядок $) - знищує прогалини початку і кінці рядка

LTrim (рядок $) - знищує прогалини в лівій частині рядка

RTrim (рядок $) - знищує прогалини в правій частині

Всі строкові функції, за винятком Mid, не змінюють рядок, а створюють її копію і потім з нею працюють.

Керуючі структури у програмі

Певні цикли

For ___ Next

For I% = 1 to 10 (% - цілочисельний тип для прискорення роботи циклу)

Print I%

Next I%

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

Приклад. Друк усіма доступними шрифтами екрану.

Private Sub Form_Click ()

Dim I As Integer

For I = 0 to Screen.FontCount - 1

FontName = Screen.Fonts (I)

Print "Це шрифт"; Screen.Fonts (I)

Next I

End Sub

Невизначені цикли

Не виконуються фіксоване число разів. Цикл може виконуватися або ні в залежності від результату, обчислюваного всередині циклу

Do

Вираз

Loop Until виконується умова

Приклад. Перевірка пароля

Private Sub Form_Load ()

Do

X $ = InputBox $ ("Пароль?")

Loop Until X $ = "VB"

End Sub

Для зупинки нескінченного процесу використовують клавіші "Break" або Run | End або закрити програму. У програмі можна використовувати оператор Exit Do (або Exit For), які переводять програму до оператора наступного після циклу.

Складні невизначені цикли

У невизначених циклах перевірка відбувається в кінці циклу і лічильника збільшується ще на 1. Іноді це викликає зайве оновлення лічильника. Можна пересунути перевірку умови на початок циклу:

Do Until умова

Тіло циклу Вираз

Loop

Do While

Do

Loop Until аналогічний

Do

Loop While умова

Приклад.

Do Do

Loop Until N> 5? Loop While N = 0 and N

Додати в блог або на сайт

Цей текст може містити помилки.

Програмування, комп'ютери, інформатика і кібернетика | Реферат
26кб. | скачати


Схожі роботи:
Потоки в Visual Basic
Програмування на Visual Basic
Робота в середовищі Visual Basic
Завдання з програмування на Visual Basic
Створення тесту на Visual Basic
Квитки з інформатики 10 клас Visual Basic
Електронний довідник з вивчення Visual Basic
Адресна книга на мові Visual Basic
Мова програмування Visual Basic for Applications
© Усі права захищені
написати до нас