7 1 c : 0 visual basicbnbars.moy.su/pdf/azbuka_visual_basic.pdf · Азбука visual basic...

21
Азбука Visual Basic Часть 1 Предисловие Нашёл я этот учебник на территории немецкого интернета где-то полгода назад, когда и мыслей о Азбуке VB ещё и в помине небыло. Но когда появился сайт, да и ещё и для начинающих у меня появилась мысль выложить эту книгу на сайте... Но как я мог это сделать, когда книга была на немецком...? Ведь из всех посетителей всего пара процентов понимают язык арийцев, вот английский пожалуйста. Оставалось одно - перевести. И вроде бы хотелось это сделать, но у меня руки опускались, когда подумаю, что 140Kb текста дочитать трудно не то что переписать. Но, как говориться, глаза бояться - руки делают и я начал. Текст получился правда в некоторых местах неуклюжий и с ошибками, но это от того, что переводил я его с чужого языка и часто ночами. Автор этого учебника - Marcus Hermann. Но, как ни странно, названия у него нет... Поэтому название я ему дал сам :). И кое-что мне пришлось изменить или дать комментарии. А ещё у меня появилась идея! А что если каждый, кому есть что-то добавить к этому учебнику напишет мне это с координатами куда это вставить? И автором этого учебника станет Азбука Visual Basic Team © :)! Т.е. учебник будет постоянно расти и обновляться за счёт посетителей! И каждый потом может гордится, что он является одним из соавторов Азбука Visual Basic Team ©. Что Вы думаете на этот счёт? Ну, ладно, теперь к содержанию! Содержание 1.Из чего состоит VB-программа? 1.Как работают Windows-программы... 2. ...и как их программируют 2.Обращение с системой Visual Basic 1.Запуск, прерывание и окончание программ 2.Сохранение и загрузка проектов 3.Стандартное окно - Form 4.Окно свойств 5.Набор инструментов (ToolBox) 6.Окно Code 7.Окно Debug 8.Окно палитры 9.Окно проекта 3.Процедуры события 1.Процедуры - рецепты для компьютера 2.Событие Form_Load 3.Событие Click 4.Событие DblClick 4.Язык программирования Visual Basic 1.Команда Print 2.Графические команды 3.Переменные и константы 4.Свойства объектов 5.Команды со значениями (функции) 6.MsgBox, InputBox 7.Математические операторы 8.Выбор: If...Then 9.Комментарии строк (' или Rem) 10.Команда End 11.Цикл Do...Loop

Upload: others

Post on 29-Jul-2020

7 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 7 1 C : 0 Visual Basicbnbars.moy.su/PDF/azbuka_visual_basic.pdf · Азбука Visual Basic Часть 1 Предисловие Нашёл я этот учебник на территории

Азбука Visual Basic

Часть 1

Предисловие

Нашёл я этот учебник на территории немецкого интернета где- то полгода назад, когда и мыслей о Азбуке VB ещё и в помине небыло. Но когда появился сайт, да и ещё и для начинающих у меня появилась мысль выложить эту книгу на сайте... Но как я мог это сделать, когда книга была на немецком...? Ведь из всех посетителей всего пара процентов понимают язык арийцев, вот английский пожалуйста. Оставалось одно - перевести. И вроде бы хотелось это сделать, но у меня руки опускались, когда подумаю, что 140Kb текста дочитать трудно не то что переписать. Но, как говориться, глаза бояться - руки делают и я начал. Текст получился правда в некоторых местах неуклюжий и с ошибками, но это от того, что переводил я его с чужого языка и часто ночами.

Автор этого учебника - Marcus Hermann. Но, как ни странно, названия у него нет... Поэтому название я ему дал сам :). И кое- что мне пришлось изменить или дать комментарии. А ещё у меня появилась идея! А что если каждый, кому есть что- то добавить к этому учебнику напишет мне это с координатами куда это вставить? И автором этого учебника станет Азбука Visual Basic Team © :)! Т. е. учебник будет постоянно расти и обновляться за счёт посетителей! И каждый потом может гордится, что он является одним из соавторов Азбука Visual Basic Team ©. Что Вы думаете на этот счёт? Ну, ладно, теперь к содержанию!

Содержание

1. Из чего состоит VB- программа? 1. Как работают Windows- программы... 2. ... и как их программируют 2. Обращение с системой Visual Basic 1. Запуск, прерывание и окончание программ 2. Сохранение и загрузка проектов 3. Стандартное окно - Form 4. Окно свойств 5. Набор инструментов (ToolBox) 6. Окно Code 7. Окно Debug 8. Окно палитры 9. Окно проекта 3. Процедуры события 1. Процедуры - рецепты для компьютера 2. Событие Form_Load 3. Событие Click 4. Событие DblClick 4. Язык программирования Visual Basic 1. Команда Print 2. Графические команды 3. Переменные и константы 4. Свойства объектов 5. Команды со значениями ( функции) 6.MsgBox, InputBox 7. Математические операторы 8. Выбор: If...Then 9. Комментарии строк (' или Rem) 10. Команда End 11. Цикл Do...Loop

Page 2: 7 1 C : 0 Visual Basicbnbars.moy.su/PDF/azbuka_visual_basic.pdf · Азбука Visual Basic Часть 1 Предисловие Нашёл я этот учебник на территории

12. Оператор GoTo 13. Генератор случайных чисел (Randomize, RND) 5. Важные свойства объектов 1. Свойство Name 2. Свойство Caption 3. Свойство Visible 4. Свойство Enabled 5. Свойство BackColor 6. Свойство ForeColor 7. Свойствa Left, Top 8. Свойствa Width, Height 6. Элементы управления и их свойства 1. Кнопки (Button) 2. Таймер 3. Линии и фигуры 4. Текстовое поле и поле надписи 5. Графическое поле

1. Из чего состоит VB-программа?

1.1 Как работают Windows-программы...

Если под Windows' ом запускается программа, на экране открывается её окно. Окна разных программ, конечно же, тоже различны, например различны по размеру, имеют различные формы, и на них видны различные вещи. Особенности, которые касаются самих окон, такие как размер, цвет, заголовки и т. д. называют свойствами окна. А вещи, которые видны на окне, в основном тексты, картинки, иконки, называют объектами или элементами управления. Каждый из этих объектов тоже имеет такие же свойства, как длина, ширина, цвет и т. д.

Если программа была запущена, и её окно было открыто, программа спокойно ждёт, пока что- нибудь не произойдёт, что, к примеру, будут нажаты кнопки, активировано меню и т. д. Когда это происходит, это называют событием. Для каждого события, которое только интересует нашу программу, програмисты ( мы!) написали в языках программирования, как Basic, отдельные " кусочки" кодов, которые будут вызваны каждый раз, если событие " происходит"( событие процедуры). Со словом " процедура" у Вас ассоциировались, может быть, проверка самолёта пилотами перед стартом или ежегодные кофепития с заключительной игрой в минигольф на Дне Рождения у Дяди Альфонса... Короче, прецедуры - это процессы, которые, как один вид поваренного рецепта, всегда одинаковы. И примерно так это в программировании: процедуры это шаг- за- шагом исполняемые указания для глупого компьютера, который не может ничего другого, как слепо следовать простым командам - это, однако, очень быстро.

Итак, если, например, в программе рисования происходит событие - пользователь кликает в меню пункт " Сохранить" - будет исполнена процедура, которая состоит из команд, заставляющих компьютер сохранить в файл нарисованную картинку.

1.2 ... и как их программируют

Visual Basic- программа, так называемый проект, состоит из минимум одного окна ( с определёнными свойствами), объектами и из многочисленных процедур событий для различных функций программы. С помощью Visual Basic делают программы примерно так: в них сначала создают окно с различными объектами и потом для каждого из них пишут процедуры, вдыхающие жизнь в серое окно. Это и есть собственно " программирование"...

2. Обращение с ситемой Visual Basic

Page 3: 7 1 C : 0 Visual Basicbnbars.moy.su/PDF/azbuka_visual_basic.pdf · Азбука Visual Basic Часть 1 Предисловие Нашёл я этот учебник на территории

2.1 Запуск, прерывание и окончание программ

Чтобы запустить, прервать или окончить работу со своей программой, можно использовать либо меню "Run" либо три иконки наверху окна VB, которые выглядят, как кнопки магнитофона. Программу можно также в любой момент остановить, нажав одновременно комбинацию кнопок Ctrl + Break. Это же произойдёт при нажатиии на иконку "Break", но это работает только тогда, пока программа только ждёт события. В обоих случаях можно продолжить с помощью иконки "Start". Однако если программа прервана таким образом, её можно изменять только в некоторых границах, а именно: можно изменять процедуры - написанные в VB коды, но не переключаться на различные объекты или изменять свойства: для этого нужно остановить программу с помощью третьей иконки "Stop". Узнать запущена ли или прервана ли или остановлена ли программа можно узнать, посмотрев на самый верх экрана - заголовок VB. После "Visual Basic" стоит там в угловатых скобках либо "run", если программа запущена, либо "break", если программа прервана или "design", если программа остановлена. Только если в заголовке стоит "design" можно изменять объекты и их свойства.

2.2 Сохранение и загрузка проектов

Чтобы уберечь свой с трудом созданный объект перед грустной смертью с выключением компьютера, нужно его прежде сохранить на жёстком диске или дискете. Сохранит проект можно, выбрав пункт "Save Project" в меню "File". Если вместо этого выбрать "Save Project As..." то можно сохранить проект под другим именем. Нужно знать, что Visual Basic сохраняет свой проект не в один единственный файл, а в минимум два: файл для окна, имя которого оканчивается на .frm и файл проекта, имя которого оканчивается на .vbp. Для каждого можно/ нужно выдумать имя, которое должно состоять из минимум восьми букв. Внимание: если вместо "Save Project" Вы выберите "Save Form1", то сохранён будет только .frm- файл, и тогда программу иногда уже не удасться загрузить. Вобщем используйте только "Save Project", кроме техслучаев, когда Вы точно знаете, что Вы делаете!

Если нужно загрузить проект в следующий раз, нужно выбрать пункт меню "Open Project...", найти в появившемся окне имя нужного проекта и выбрать его. При последующем нажатии на ОК, проект будет загружен.

2.3 Стандартное окно - Form

Окно Form является началом вашей программы. Его можно двигать по экрану, увеличивать, уменьшать, менять его свойства в окне свойств, упорядочивать на нём объекты и в окне Code писать для него процедуры. Само окно тоже считается как объект, так сказать, " высший объект". Один из объектов всегда является " актуальным объектом", чьи свойства будут перечислены в окне свойств. Объект становится актуальным, когда на него кликнут. Узнают это чаще всего по обрамлению или по какой- нибудь другой маркировке.

2.4 Окно свойств

Здесь всегда перчислены свойства актуального объекта ( см. выше). Свойство, представленное синим, может быть изменено в строке справа. Иногда нужно вносить данные самому, иногда можно выбирать из выпадающего списка, который отображён в строке справа в виде маленькой стрелки вниз. Заметьте, что при изменении свойств окна, изменения происходят синхронно.

2.5 Набор инструментов (ToolBox)

Здесь можно выбрать объекты, которые нужно поместить на форме. Например, чтобы нарисовать линию, кликните на символ линии. Теперь кликните на то место на форме, где должна начинаться линия и тяните мышь с нажатой кнопкой туда,

Page 4: 7 1 C : 0 Visual Basicbnbars.moy.su/PDF/azbuka_visual_basic.pdf · Азбука Visual Basic Часть 1 Предисловие Нашёл я этот учебник на территории

где эта линия должна кончаться. Отпустите кнопку мышки. Готово! Отдельные объекты будут описаны позже.

2.6 Окно Code

В окне Code пишутся процедуры события и другие Basic- конструкции. Окно Code назывется так потому, что тексты, написаные там называются на языке программирования именно " коды" . Окно Code открывается тогда, когда производится двойной клик на объект, для которого должна быть написана процедура. Или если кликнуть в окне проекта на иконку "View Code". Сверху слева в окне Code стоит имя объекта, а справа его событие, для которого пишется его процедура. Т. е. сразу видно, когда команды, написанные здесь, будут выполнены. С помощью мышки можно выделять текст, над которым нужно провести с нажатой левой кнопкой. Когда курсор будет убран из строки, Visual Basic сразу же проверяет правильна и полна ли структура строки. Если нет, тут же появляется сообщение об ошибке.

Важнейшие комбинации клавиш в окне Code.

Ctrl+C Копировавние выделенного текста в буфер.

Ctrl+X Вырезание выделенного текста в буфер.

Del Удаление выделенного текста.

Ctrl+V Вставка выделенного текста из буфера.

Ctrl+Z Отмена последнего действия.

Ctrl+Y Вырезание строки, на которой стоит курсор, в буфер.

F5 Запустить проект.

2.7 Окно Debug

Окно Debag, собственно, служит помощью в поиске и отлавливании ошибок в программных кодах ( bugs - в компьютерном слэнге). Однако его также хорошо применять для проверки отдельных маленьких Basic- команд. Это окно появляется каждый раз при запуске вашего приложения снизу справа. Если программа прервана, это окно появится поверх всех окон и в нём появится курсор. Прямо здесь можно вводить строки и клавишей ENTER давать команду на исполнение этих строк, которые будут сейчас же выполнены. Команда Print ( см. ниже) пишет в этом случае не в окно, а прямо под командной строкой в окне Debug, что тоже очень практично - [ мои прим.: что имеет в виду здесь автор мне совершенно не понятно, возможно идёт речь о ранних версиях VB] .

2.8 Окно палитры

Если нужно изменить цвет какого- нибудь объекта, нужно сделать двойной клик по соответствующему свойству " цвет" в окне свойств. Должна появиться палитра цветов со стандартными цветами, из которых нужно выбрать один. Если Вам не

Page 5: 7 1 C : 0 Visual Basicbnbars.moy.su/PDF/azbuka_visual_basic.pdf · Азбука Visual Basic Часть 1 Предисловие Нашёл я этот учебник на территории

нравятся предложенные там цвета и Вам нужен зелёный или красный, Вы можете кликнуть на вкладку 'Palette' и довольствоваться тем, что там есть.

2.9 Окно проекта

Это окно нужно только тогда, когда пишутся сложные программы, которые, к примеру, состоят из многочисленых окон. Тогда с помощью этого окна можно переключаться между отделными окнами. Мы это окно применять пока не будем. Если Вам вдруг не видно вашу форму кликните в окне проекта на кнопку "View Object" - окно появится вновь.

3. Процедуры события

3.1 Процедуры - рецепты для компьютера

В Basic'e процедуры начинаются с команды Sub, потом идёт имя процедуры и (). Оканчиваются процедуры командой End Sub ( англ. subroutine: подпрограмма). Между этим стоят команды, принадлежащие этой процедуре. Они будут, при вызове процедуры, следовать одна за другой.

В большинстве своём процедуры - это процедуры события: для каждого события, на которое должна реагировать программа, нужно писать процедуру. Причём Sub, имя процедуры, () и End Sub будут заданы самим Basic' ом.

3.2 Событие Form_Load

( англ. load: загружать) Процедура события Form_Load выполняется каждый раз при запуске вашего приложения прежде, чем окно появится на экране. Поэтому бесполезно уже в этой процедуре что- либо писать в окне или рисовать ( например Print), т. к. это просто не будет сделанно. Окна- то ещё нет!

3.3 Событие Click

Событие Click происходит в том случае, если на объекте кликнуть левой кнопкой мыши. Если, к примеру, пользователь щёлкнет на одном из элементов управления, событие Click этого объекта будет тут же исполнено. Можно кликнуть по форме - для этого имеется событие Form_Click, которое может содержать различные процедуры.

3.4 Событие DblClick

Это событие происходит при двойном клике мышкой на каком- либо объекте. Внимание: ещё при первом нажатии произойдёт событие Click, но при мнгновенном втором уже нет.

4. Язык программирования Visual Basic

4.1 Команда Print

( англ. print: печатать) При помощи команды Print можно из какой- нибудь процедуры печатать тексты на форме. Текст должен при этом стоять в кавычках ("). Пример:

[ мои прим.: тексты в кавычках не мои и переведены почти дословно :-))))]

Print " Эй, перед монитором! Привет!"

Page 6: 7 1 C : 0 Visual Basicbnbars.moy.su/PDF/azbuka_visual_basic.pdf · Азбука Visual Basic Часть 1 Предисловие Нашёл я этот учебник на территории

Пишет на окне:

Эй, перед монитором! Привет!

Команду Print можно применять также для решения:

Print "413 + 512 равно"

Print 413 + 512

Выдаёт на форме:

413 + 512 равно 925

Всё, что стоит после команды Print в кавычках, при выполении компьютером, будут буква за буквой, цифра за цифрой и знак за знаком точно также " списаны". А всё, что стоит позади команды, не в кавачках, должно быть написано программным языком Basic - это будет " переведено" компьютером. Так, к примеру, 413 + 512 для компьютера значит " результат сложения 413 плюс 512". И этот результат должен быть при помощи команды Print напечатан. Поэтому там и стоит "925".

При помощи команды Print можно также печатать значения свойств или переменных (c м. ниже):

Print Form1.Caption

Пишет именно то, что стоит в его заголовке, т. к. Form1.Caption означает для компьютера " значение свойства надписи окна с именем Form1". Ну, а что будет напечатано командой Print "Form1.Caption" ?

И ещё три заметки к этой команде:

1. Деление и умножение в Basic'e производится при помощи звёздочки (*) и слэша (/). Кроме того компьютер понимает нецелые числа, однако вместо запятой нужно применять точку, как в Англии и США.

Print 8 / 2

Print 3 * 2.5

выдаст:

4 7,5

Однако в результате, который будет выдан, число 7,5 будет написано с запятой! Только в самих Basic- кодах нужно применять точку.

2. Если нужно распечатать несколько вещей в одной строке, то их нужно перечислить всех после команды Print через точку с запятой (;):

Print "1 + 1 всё ещё равно "; 1 + 1;

Print ", а три умножить на нуль равно "; 3 * 0

получим:

Page 7: 7 1 C : 0 Visual Basicbnbars.moy.su/PDF/azbuka_visual_basic.pdf · Азбука Visual Basic Часть 1 Предисловие Нашёл я этот учебник на территории

1 + 1 всё ещё равно 2, а три умножить на три равно 0

3. Если нужно напечатать текст не с начала строки, можно использовать указание Tab(...). Текст будет напечатан, как и стоит после Tab в скобках:

Print Tab(10) " Кое- что неопровержимо: мяч круглый!"

Print Tab(10) " Ха- ха!"; Tab(30) " Прфффффц!"

Получим на экране:

Кое- что неопровержимо: мяч круглый! Ха- ха! Прфффффц!

Между " Ха- ха!" и левым краем 10 пробелов, а между " Прфффффц!" и левым краем (!) 30 пробелов. Внимание: символы на мониторе по- различному широкие, и W шире, чем i. Поэтому между позицией 10 и позицией 30 необязательно поместятся 20 букв!

4.2 Графические команды

При помощи графических команд можно создавать по- настоящему красивые рисунки в вашем приложении [ мои прим.: у каждого свои вкусы и запросы - у кого брилианты слишком мелкие, а у кого суп слишком жидкий...] . Чтобы " объяснить" в цифрах компьютеру что и куда он должен писать используют координаты. Обращение с координатами Вы будете учить в этом курсе.

Расстояния на мониторе, в Visual Basic измеряются не в сантиметрах, а с помощью специальной единицы измерения " твип". Один твип - это очень маленькое расстояние: взгляните на форму в режиме "design" - она вся изрисована серыми точками. Так вот от точки до точки помещается 120 твипов!

Итак, чтобы начертить линию на форме, нужно задать координаты её начала и конца. Пример:

Line (1000,1500)-(5000,1500)

Line ( начальная точка)-( конечная точка)

Этой командой будет нарисована горизонтальная линия, т. к. начальная точка и конечная точка имеют одинаковое расстояние к верхнему краю окна (1500 твипов). Начало линии - 1000 твипов от левого края формы, а конец линии на 5000 твипов. Всего линия 4000 твипов длиной.

Если нужно, можно задавать ещё и цвет, в котором надо рисовать ( чёрный цвет стоит по умолчанию). Для этого однако нужно знать, как Windows обращается с цветами: в компьютере имеется для каждого цвета, которые он " знает", просто одно число, т. к. числа, как известно, компьютер может обрабатывать особенно хорошо. Но для нас труднее понять, что светло- коричневый цвет соответсвует числу 8887245, поэтому в бэйсике имеется " компромисс": GRB- функция. Этим компьютеру " объясняют", как должны смешиваться цвета. В телевизорах и компьютерных мониторах каждый цвет - это смесь из красного, зелёного и синего цвета. В каждом цвете разное содержание каждого из них. Однако это смешивание не действует, как в ящике с красками: если, например, смешать одинаково много синего, зелёного и красного, можно получить серый цвет.

Line (1000,1500)-(5000,3000), RGB(255,0,0)

Page 8: 7 1 C : 0 Visual Basicbnbars.moy.su/PDF/azbuka_visual_basic.pdf · Азбука Visual Basic Часть 1 Предисловие Нашёл я этот учебник на территории

Этим рисуется красная диагональная линия. Цвет описан с помощью RGB- функции, где отдельно задаётся каждый цвет ( в пределах от 0 до 255). По этому принципу можно достигнуть любого цвета. Давайте я покажу, как это делается.

Важные цвета:

цвет R(ed) G(reen) B(lue) цвет R G B черный 0 0 0 жёлтый 255 255 0 белый 255 255 255 фиолетовый 255 0 255

красный 255 0 0 коричневый 205 155 135 зелёный 0 255 0 оранжевый 255 128 0 синий 0 0 255 серый 128 128 128

Итак, например, оранжевый цвет в бэйсике называется RGB(255,128,0).

Если нужно нарисовать прямоугольник, для этого хватит всего одной Line-команды, в которой вместо начальной и конечной точки нужно задать координаты левого верхнего и правого нижнего угла прямоугольника, и после цвета вписать ещё ", B" ( В, потому что прямоугольник на английском называется box):

Line (1000,1500)-(5000,3000),RGB(255,0,0),B

чертит вместо линии прямоугольник из красных линий. Можно также " прицепить" за "B" букву "F". Тогда прямоугольник будет заполенен краской. Если Вы не хотите задавать цвет, обе запятые писать нужно всё- равно: при помощи команды

Line (1000,1500)-(5000,3000),,BF

Будет начерчен чёрный, заполненый прямоугольник. Будьте внимательны и не пропускайте запятые между которыми мог бы стоять цвет!

Рисовать круги компьютер может, конечно же, тоже! Для этого имеется команда Circel. К этому нужно, конечно, добавить где и каким размером должен быть круг. Для этого описывают сначала координаты середины круга, и потом задают величину круга - его радиус в твипах. Кроме того можно устанавливать цвет круга.

Circle (3000,4000),2000,RGB(0,190,0)

компьютер рисует тёмно- зелёный круг с радиусом 2000 твипов и серединой с координатами (3000,4000).

Также можно рисовать отдельные точки, а именно при помощи команды PSet:

PSet (1000,500),RGB(255,128,0)

рисует оранжевую точку с координатами (1000,500). Цвет, как и во всех других командах, можно тоже убирать.

И, наконец, ещё одна важная команда: при помощи команды Cls можно всё, что было прежде нарисовано или написано командами PSet, Line, Print или Circle просто стереть. Если на форме находятся какие- нибудь объекты, они при этом стёрты не будут. Имя Cls происходит из ангийских слов clear screen: очистить экран.

Page 9: 7 1 C : 0 Visual Basicbnbars.moy.su/PDF/azbuka_visual_basic.pdf · Азбука Visual Basic Часть 1 Предисловие Нашёл я этот учебник на территории

4.3 Переменные и константы

Константы - это просто имена для цифр или набора символов. После написания программы, её будет намного проще читать, понимать, если, например, повсюду, где есть число pi (pi = 3,14159...), действительно стоит Pi, а не каждый раз цифры 3.14159. Поэтому в начале процедуры пишут:

const PI = 3.14159

и если где- нибудь позже будет написано:

Print 2 * PI

компьютер заменит Pi нужным числом и выдаст

6,28318

на форме. Между VB- программистами принято константы писать всегда только большими буквами, чтобы их можно было отличить от переменных.

Переменные намного важнее констант, возможно даже важнейшая часть программирования. Переменные и константы вообще- то почти одно и тоже, кроме одного различия: значение переменной - числа или символы - в ходе программы могут быть изменены. Если к примеру в программе- игре имеется переменная Punktzahl, содержащая определённое кол- во пунктов, где- нибудь можно написать:

Punktzahl = 1000

и для всех команд, которые появятся после этого, переменная Punktzahl будет всегда равна числу 1000 - пока возможно не появится комманда "Punktzahl = 1001". Punktzahl называют именем переменной, и 1000 в этом примере является её значением. Команду "Punktzahl = 1000" называют присвоением: переменной Punktzahl будет присвоено значение 1000.

Переменные могут содержать не только числа и символы, но и даты, время и т. д. Если UserName, BirthDay и EndOfTime переменные, тогда можно написать:

UserName = "John"

( здесь очень важны кавычки, т. к. иначе компьютер подумает, что John тоже является переменной!)

BirthDay = #29.10.1970#

EndOfTime = #8:30#

( как символы выделяют кавычками, так дату или время выделяют символoм "#"). Дату и время можно поместить в одну переменную:

DateAndTime = #13.2.1994 11:30#

И если после этого в программе появится команда

Print UserName; " должен "; DateAndTime;

Print " к зубному врачу!"

компьютер напишет на форме:

Page 10: 7 1 C : 0 Visual Basicbnbars.moy.su/PDF/azbuka_visual_basic.pdf · Азбука Visual Basic Часть 1 Предисловие Нашёл я этот учебник на территории

John должен 13.02.1994 11:30:00 к зубному врачу!

Важно: Если в программе нужно применять переменную, её нужно прежде объявить ( для этого используется слово продекларировать), а именно в отведённом для этого месте кода. Найти это место можно в окне Code, кликнув вверху слева, где стоят объекты, и в появившемся меню выбрать "(General)". В обоих верхних полях высвятятся надписи "(General)" и "(Declarations)". На этом месте должна была бы стоять строка "Option Explicit". Здесь нужно описать все переменные, которые будут использоваться в программе, а именно с ключевым словом Dim. Например, если нужна переменная Punktzahl, то нужно вписать следующее:

Dim Punktzahl

Команда Dim сообщает компьютеру: создай переменную с именем, которое следует после Dim. Внимание: переменная не получает при этом никакого значения, и его можно присвоить внутри какой- нибудь процедуры.

И ещё кое- что об именах переменных: имена перменных в Visual Basic могут состоять только из 40 букв, цифр и символа "_" ( на клавиатуре находится под тирe "-"). Однако начало имени должно быть буквой! Кроме того нельзя применять слова зарезервированые бэйсиком, как имена переменнных, т. к. иначе компьютер всё перепутает... Если это случится просто из- за невнимательности и Вы применили зарезервированное слово, это легко можно будет определить, т. к. слово станет синим, как только курсор переместится на другую строку. Тогда нужно выдумать какое- нибудь другое имя перменной.

Примеры для возможных имён перменных:

Appel; Level42; PunktZahl;

Punktzahl_die_der_Spieler_erreicht_hat; Hui_Buh

Примеры для невозможных имён перменных:

4gewinnt ( начинается числом)

Name ( ключевое слово бэйсика)

Hui Buh ( состоит из двух слов)

Hoechste_Punktzahl_die_je_ein_Spieler_erreicht_hat

( длиной больше сорока символов)

Stan&Ollie ( содержит недопустимый символ)

4.4 Свойства объектов

Свойства объектов имеют много общего с переменными: так, например, они тоже имеют имя ( к примеру Form.Caption) и значение ( к примеру " Моя первая программа V2.0b"). Большинству из них можно также присваивать значения в ходе программы:

Form.Caption = " Теперь здесь стоит что- то другое..."

впечатляет, когда вдруг в заголовке окна вдруг появляется что- нибудь другое! Кроме того, можно кругом, где только могут стоять имена переменных, подставлять их имена:

Page 11: 7 1 C : 0 Visual Basicbnbars.moy.su/PDF/azbuka_visual_basic.pdf · Азбука Visual Basic Часть 1 Предисловие Нашёл я этот учебник на территории

Line (1000,1000)-(5000,5000),Form.BackColor,BF

означает, на форме должен быть нарисован прямоугольник таким же цветом, как и сама форма. Т. е. в этом случае он будет невидим.

4.5 Команды со значением (функции)

Если Basic- программисты говорят о функциях, то они подразумевают под ними специальные команды, которые находятся в программах там, где должны быть числа или символы. Пример, который был уже затронут выше - это RGB- функция, которую подставляют туда, где должны быть коды цветов. Вместо того, чтобы в программе писать :

PSet (500,1000), 8887245

чтобы нарисовать свело- коричневую точку, можно просто написать:

PSet (500,1000), RGB(205,155,135)

что означает тоже самое! RGB- функция переводит части красного, зелёного и синего цветов в длиный номер цвета.

Поэтому

Print RGB(205,155,135)

не выдаст ничего другого как число 8887245 в окне.

И тут же другой пример функции:

Print Weekday("29.10.1970")

компьютер напишет цифру 5, номер дня недели той даты, которая стоит в скобках ( причём: 1- воскресенье, 2- понедельник, 3- вторник и т. д.). Короче дата будет переведена в номер дня недели. ( англ. weekday: день недели)

Всё, что стоит после функции в скобках, называют аргументами или параметрами функции. " Результат" функции зависит, конечно же, от этих параметров: если я впишу другую дату, то и получу другой день недели ( во всяком случае чаще всего). Важно то, чтобы были заданы правильные параметры: если функции нужна дата, то и нужно дать ей дату, иначе появится сообщение об ошибке ( и функция будет бессмысленной).

4.6 MsgBox, InputBox

При помощи этих двух команд можно вызывать так называемые диалоговые окна на экран - это такие окна, которые о чём- то уведомляют пользователя или о чём- то спрашивают. Тогда пользователь " принуждён" на них отреагировать, т. к. пока он этого не сделает, не сможет использовать программу дальше.

С помощью команды MsgBox ( англ. message box: ящик сообщения) получают окно, в котором просто стоит текст, и в котором можно видеть некоторые иконки. Пользователь должен ответить, чтобы продолжить дальше. Простейшая программа, если нужен только текст и ОК- кнопка:

MsgBox " Не надо паники!"

появится маленькое окошко с текстом " Не надо паники!". Окошко с заголовком можно получить при помощи команды:

Page 12: 7 1 C : 0 Visual Basicbnbars.moy.su/PDF/azbuka_visual_basic.pdf · Азбука Visual Basic Часть 1 Предисловие Нашёл я этот учебник на территории

MsgBox " Не надо паники!", 0," Клёво..."

Почему между запятыми стоит нуль сейчас будет разъяснено, но сначала вот что: позади второй запятой можно определять надпись для заголовка диалогового окна, в этом примере - " Клёво...". Если эта часть будет пропущена, в этом заголовке будет просто имя проекта.

А теперь этот " мистический" нуль: эта часть кода определяет для компьютера, какая иконка и сколько кнопок должно быть показано в диалоговом окне. Часть этого кода я хочу здесь раскрыть:

0 показать только "OK" ( это будет сделано также тогда, когда там не будет ничего вообще).

1 показать "OK" и " Отмена".

2 показать " Отмена", " Повторить" и " Игнорировать".

3 показать " Да", " Нет" и " Отмена".

4 показать " Дa" и " Нет".

5 показать " Повторить" и " Отмена".

Команда

MsgBox "... пока смерть не разлучит вас?", 3

поставит пользователя перед выбором между " Да", " Нет" и " Отмена". Однако такие команды в программах не встречаются, т. к. программа так никогда может и не узнать решение пользователя! Поэтому для таких случаев имеется практичный вариант команды MsgBox: команда MsgBox как функция! Можно к примеру объявить переменную "Reshenie" и потом написать:

Reshenie = (MsgBox "... пока смерть не разлучит вас?", 3)

Если эта строка будет выполнена, на экране появится диалоговое окно с тремя кнопками, и в зависимости от того какую кнопку нажмёт пользователь, переменная Reshenie получит соответсвующее значение:

Значение Нажатая кнопка

1 OK

2, 3 Отмена

4 Повторить

5 Игнорировать

6 Дa

7 Нет

Программа может тогда при помощи команды If ( см. ниже) продолжать в зависимости от значения переменной.

Page 13: 7 1 C : 0 Visual Basicbnbars.moy.su/PDF/azbuka_visual_basic.pdf · Азбука Visual Basic Часть 1 Предисловие Нашёл я этот учебник на территории

Но только как функция имеется очень похожая команда InputBox ( англ. input: ввод). Которую применяют, если от пользователя требуется больше чем просто решение - например, его имя или возвраст. Пример:

FirstName = InputBox(" Введите ваше имя!")

Выдаст диалоговое окно с текстом, двумя кнопками ( ОК и Отмена) и полем для ввода ( некрасивое, но практичное). То, что введёт пользователь будет стоять в переменной FirstName. Если будет нажата кнопка " Отмена", тогда перменная FirstName окажется пустой. Как и у команды MsgBox имеется возможность задать заголовок окна. Также имеется возможность вписать текст в текстовое поле, так сказать, предложить пользователю один из вариантов.

Otpusk = InputBox(" Ваше времяпровождение?"," Что я люблю"," Компьютер")

выдаст под заголовком " Что я люблю" вопрос " Ваше времяпровождение?" и в поле ввода уже будет стоять ответ " Компьютер". [ мои прим.: Вы должны будете либо согласится с предлогаемым вариантом и подтвердить или ввести свой и подтвердить] . Попробуйте!

4.7 Математические операторы

Решать компьютер, конечно же, может! Повсюду в Basic- программе, где стоят цифры, может вместо них стоять также сложные математические выражения, из которых полается одно число. Компюьер знает также правила деления на нуль, скобки и т. д. Кроме того, повсюду, где находятся цифры могут находиться переменные, константы, функции или также свойства объектов, вместо которых компьютер подставит потом числа.

Математические операторы в Visual Basic ( в порядке, в котором они будут решаться):

() скобки

^ возвести в степень

* умножение

/ деление

+ плюс

- минус

и пара функций:

Sqr( число) вычесть корень ( англ. square root)

Fix( число) обрезает все числа после запятой, округление

Fix(3.5) - это 3, Fix(-3.5)- это -3.

Символы, конечно же, нельзя приминять в таких случаях, но их можно объединять символом &:

Dim One, Two

One = " Компьютер"

Page 14: 7 1 C : 0 Visual Basicbnbars.moy.su/PDF/azbuka_visual_basic.pdf · Азбука Visual Basic Часть 1 Предисловие Нашёл я этот учебник на территории

Two = One & " - это сумасшествие!"

Print Two

выдаст на форме: Компьютер - это сумасшествие!

4.8 Выбор: If...Then

Очень часто бывает, что компьютер в зависимости от значения переменной должен выполнять различные вещи. Например, в переменной может стоять какую кнопку нажал пользователь в диалоговом окне ( см. MsgBox). Для таких случаев имеются команды If...Then...Else...End If ( англ. if: если, then: тогда, else: иначе). Легче всего понять со следующим примером:

Otwet = MsgBox(" Как дела?" ,4)

If Otwet = 6 Then ' выбрано " да"

MsgBox " Это чудесно!"

Else ' иначе, т. е. выбрано " нет"

MsgBox " Ну тогда удачи!"

End If

В зависимости от того, правильно или ложно решение "Otwet = 6" ( пользователь выбрал " да"), будут выполнены различные команды. Те команды, которые находятся между Then и Else будут выполнены если условие истинно, а команды между Else и End If, если условие ложно. Но в любом случае после End If исполнение команд будет продолжено. Часть Else можно вообще- то не вставлять, если оно не нужно. Кроме того существует ещё и короткая форма: если должна быть выполнена только одна команда и если условие истинно, можно также писать в этом роде:

If GamerLife = 1 Then Print " У Вас осталась только одна жизнь!"

В этом случае не нужны слова End If.

Конечно же, существуют также сложные условия:

If a / 7 = Fix(a / 7) Then

Print a; " можно поделить на семь без остатка!"

End If

В Бэйсике существуют следующие возможности, для того что сравнить два выражения:

< меньше <= меньше либо равно

> больше >= больше либо равно

= равно <> не равно

Page 15: 7 1 C : 0 Visual Basicbnbars.moy.su/PDF/azbuka_visual_basic.pdf · Азбука Visual Basic Часть 1 Предисловие Нашёл я этот учебник на территории

Эти сравнения можно также использовать при сравнении символов. Причём " меньшее" выраженее не то, которое короче, а то которое в алфавите стоит ближе к началу. И "Apfelkern" меньше, чем "Birne"!

Также имеются логические операторы And( и), Or( или) и Not( не). При помощи них можно связывать различные условия и противопоставлять:

Not Life <=3 - тоже самое, что и Life > 3.

Old >= 10 And Old <= 18 - истино тогда и только тогда, когда значение Old находится в промежутке от 10 до 18

Old < 10 Or Old > 18 истинно тогда, и только тогда, когда значение Old не находится в промежутке от 10 до 18

Со сложными условиями с And, Or и Not можно иногда легко запутаться!

4.9 Комментарии строк ( ' или Rem )

Иногда программы, которые мы пишем становятся очень сложными. Усложнёными настолько, что если просмотреть коды спустя пару недель и они будут возможно уже изменены, то станет почти невозможным понять, что там имеется ввиду и как это работает. Но это нормально! И поэтому ко всему, что Вы делаете в сложной программе, надо делать пометки. Чтобы вводить такие заметки в программу, существует возможность комментирования строк: всё, что стоит позади символа "'" будет распознано компьютером при запуске программы, как строки, которые не нужно брать во внимание. Пример:

Line (0,0)-(2000,2000) ' линия сверху слева в

' право вниз в окне

Вместо ' можно также применять слово Rem ( англ. remark = заметка), но уже для полной строки, не разбитой на две части, иначе можно запутаться:

Rem линия сверху слева в право вниз в окне

Считается хорошим тоном повсюду вставлять комментарии в свою программу, чтобы потом её лучше понимать самому и другим программистам.

4.10 Команда End

Закончить программу можно, нажав на кнопку "End" в панели VB. Однако иногда нужно прекратить программу командой, например, если игра подошла к концу и возникла критическая ошибка. Для этого существует команда End, которой тотчас же прекращает программу. Visual Basic возвращается тогда сразу в режим design.

4.11 Цикл Do...Loop

Под словом " цикл" ( на английском loop) программисты подразумевают часть программы, которая будет исполнена несколько раз подряд. Вы познакомитесь ещё со многими примерами из этого курса, т. к. циклы нужны очень часто. Здесь же я только объясню, как правильно применять цикл Do...Loop:

Этот цикл существует для того, чтобы выполнять ряд команд, так называемые тела циклов, так долго, пока не будет испонено какое- нибудь определённое условие - условие прерывания. Или до тех пор, пока пока какое- нибудь определённое условие будет не исполнено. Два следующие примера делают одно и

Page 16: 7 1 C : 0 Visual Basicbnbars.moy.su/PDF/azbuka_visual_basic.pdf · Азбука Visual Basic Часть 1 Предисловие Нашёл я этот учебник на территории

тоже: они вызывают диалоговое окно на экран до тех пор, пока пользователь не нажмёт " Да". А потом они выдают шутку:

Do

YesNo = MsgBox(" Хотите шутку?",4)

' диалоговое окно с выбором между " Да" и " Нет"

Loop Until YesNo = 6 ' 6 соотвествует ответу " Да"

MsgBox " Печь можно и без муки!" ' сама шутка !!! -[ мои прим. Ах, как смешно! :)]

' (c) Helge Schneider

( англ. until: до тех пор, во время) другая версия:

Do

YesNo = MsgBox(" Хотите шутку?",4)

Loop While YesNi <> 6

MsgBox " Печь можно и без муки!"

( англ. while: пока не...). Условие "YesNo = 6" или "YesNo <> 6" будет перепроверяно каждый раз после выполнения, и в зависимости от того, верно или ложно ли условие, будет выполнен цикл ещё раз или прекращён и далее будут исполнены команды, следующие за ним.

Если условие должно быть перепроверяно уже перед первой " петлёй" цикла, можно поставить While или Until в начале цикла:

Do Until Aepfel > 6

(...) ' здесь находится тело цикла

Loop

или:

Do While Aepfel <= 6

(...) ' здесь находится тело цикла

Loop

Настоятельно рекомендую как вверху отделять тело цикла сверху и снизу пустыми строками!!!

Также можно покидать цикл в середине тела, а именно при помощи команды Exit Do. Тогда сразу будет исполнена следующая команда после цикла. В основном Exit Do применяют вместе с If...Then. Также, если цикл может быть покинут только при помощи Exit Do, проверку условия Until или While можно и не испоьзовать:

Page 17: 7 1 C : 0 Visual Basicbnbars.moy.su/PDF/azbuka_visual_basic.pdf · Азбука Visual Basic Часть 1 Предисловие Нашёл я этот учебник на территории

Do

(...)

If Aepfel > 6 Then Exit Do

(...)

Loop

Программист всегда должен быть внимателен, чтобы цикл в любом случае когда-нибудь мог закончиться! Так называемые бесконечные циклы относятся к частым ошибкам программистов. Часто в этом случае может помочь только прерывание программы при помощи клавиш Ctrl + Break.

4.12 Оператор GoTo

( англ. go to: иди к/ на [ мои прим.: :-))] ) При помощи GoTo можно приказать программе, продолжать в каком- нибудь другом месте программы, вместо того, чтобы исполнять следующие команды. Т. е. GoTo заставляет перепрыгнуть программу от одних операторов к другим. Но прежде перед тем местом, куда должны " прыгнуть" программа, нужно установить метку - это всего лишь слово с двоеточием позади. Этоже слово, но без двоеточия, ставится потом позади команды GoTo. Этим определяют куда программа должна перепрыгнуть. Метка должна стоять в той же процедуре, что и сама команда GoTo и оно не должно быть зарезервированным словом VB, переменной или константой! Кроме того метка должна всегда стоять перед нужным оператором.

(...)

Metka: ' это метка на которую нужно прыгнуть

(...)

GoTo Metka ' сейчас программа перепрыгнет наверх

' то, что здесь стоит никогда не будет выполнено!

Если используется много GoTo- команд, программа станет нечитаемой (" спагетти-код"). Поэтому эту команду надо избегать. Учёные специализируюшиеся на компьютерах доказали, что все программы можно писать без GoTo, и применять вместо этого If...Then...Else и Do...Loop.

4.13 Генератор случайных чисел (Randomize, RND)

(англ. random: случайно) Иногда в программе нужно где- нибудь применить случайное число. Для этого в Бэйсике существует функция RND: она возвращаетчисло между 0 ( включительно) и 1 ( исключительно), но какое именно - чистая случайность!

Чтобы получить случайное значение между 0 и каким- нибудь другим числом, например, между 0 и 256, случайное число можно просто умножить на это число: RND * 256 выдаст случайное число между 0( включительно) и 256( исключительно). Командой

PSet (RND*1000,RND*1000), RGB(RND*256,RND*256,RND*2 56)

Page 18: 7 1 C : 0 Visual Basicbnbars.moy.su/PDF/azbuka_visual_basic.pdf · Азбука Visual Basic Часть 1 Предисловие Нашёл я этот учебник на территории

поставит точку со случайными координатами в верхнем левом углу окна со случайным цветом. Если заставить компьютер сделать это пару сотен раз, окно будет скоро выглядеть засыпанным конфетти!

Осторожно: Каждый раз старте программы случайные числа будут всё время онинаковыми! Компьютер берёт случайные числа из, так сказать, одинаково рассортированых карт. Чтобы этого избежать в начале программы нужно просто " перетусовать карты". И для этого имеется команда Randomize. Если в программе Вам нужно использовать случайные числа, эту команду лучше всего вызывать из события Form_Load.

5. Важные свойства объектов

5.1 Свойство Name

Это свойство имеется у всех объектов. Оно определяет имя объекта, под которым этот объект будет применяться в Basic- содах. Это свойство может быть изменено только в режиме design и не в самой программе. Предустановки для этого свойства - это, например, "Form1" у окна. Если где- нибудь в программе нужно обратиться к этому объекту, к примеру, если надо поменять его свойство, то надо использовать имя этого объекта.

5.2 Свойство Caption

Это свойство имеется у окон, кнопок, " этикеток" и у могих других элемнтов управления. У окон это свойство задаёт текст, который будет отображён в заголовке этого окна. Этот текст отображается также в иконке окна в таскбаре. У элементов управления это свойство определяет текст, который находится на самих элементах управления или в близи них. Это свойство может быть изменено как в режиме design, так и в ходе самой программы. Пример:

Form1.Caption = "ExZell V5.0 Vollzugsanstaltsverwal tung"

5.3 Свойство Visible

( англ. visible: видимый) Это свойство имеется у окон и всех элементов управления, кроме таймера ( он всегда " невидим"). Это свойство определяет, видим или скрыт объект, и может быть изменено, как в режиме design, так и в ходе программы. Это свойство может принимать значения только True ( англ. true: истинно, объект видим) или False ( англ. false: ложно, объект невидим). Пример:

Command1.Visible = False

Объект копка с именем Command1 будет удалён с экрана - сделан невидимым.

5.4 Свойство Enabled

Это свойство присутсвует у всех окон и элементов управления. Оно определяет будет ли форма или элемент управления реагировать на события произведённые пользователем. Этим свойством они будут либо включены либо выключены. Если элементы управления будут выключены они станут серыми вместо чёрных и становятся неактивными, " потушенными". Это свойство также, как и свойство Visible принимает значения только True или False:

True объект реагирует на события.

Page 19: 7 1 C : 0 Visual Basicbnbars.moy.su/PDF/azbuka_visual_basic.pdf · Азбука Visual Basic Часть 1 Предисловие Нашёл я этот учебник на территории

False объект не реагирует на события.

На этой основе элементы управления, которые не должны быть использованы, правильнее " запирать" с помощью свойства Visible. Можно к примеру закрыть текстовое поле, которое будет применено только как вывод информации.

Или если, например, отключить свойство Enbled y таймерa (Timer1.Enabled = False), то он перестанет реагировать на события и выполнять заданные задания до тех пор, пока его не включат снова.

5.5 Свойство BackColor

( англ. background color: цвет заднего фона) BackColor определяет цвет фона для объекта и может быть изменён, как в режиме design, так и в ходе программы. Пример:

Form1.BackColor = RGB(0,255,0)

окрасит фон окна в зелёный цвет. Внимание: если это свойство будет изменено в ходе программы, то всё, что было написано или нарисовано на форме с помощью графических команд и с помощью команды Print, будет стёрто!

Если свойство BackColor Вы изменяете в окне свойств, можно выбрать цвет из многих предложеных там цветов. Если предложенных цветов там не хватает, можно создавать свои собственные цвета и они будут отображены тоже. Смотрите также главу о графических командах.

5.6 Свойство ForeColor

( англ. foreground color: цвет переднего фона) В окнах и многих других элементах управления этим свойством можно устанавливать цвет, которым будут напечатаны на них буквы и рисунки. Если это свойство будет изменено в ходе программы, то этим цветом будут напечатаны только те буквы, которые будут напечатаны после этих изменений.

5.7 Свойства Left, Top

( англ. top: вверх; left: лево) Эти свойства имеются у окон и почти всех элементов управления. Они определяют координаты левого верхнего угла объекта. У окон это координаты относительно экрана, а у элементов управления относительно к верхнему левому углу " внутренней" площади, т. е. окна, в котором они находятся. В режиме design эти свойства могут быть изменены при перетягивании мышкой и в окне свойств. В ходе программы эти свойства могут быть изменены тоже, но уже путём присвоения.

5.8 Свойства Width, Height

( англ. width: ширина; height: высота) Эти свойства определяют ширину и высоту объекта. Также Вы можете изменять их как в режиме design, так и в ходе программы. Размеры объекта изменяются тогда сразу.

У окон к высоте и ширине относятся также края окна сверху, снизу и боковые стороны. У элементов управления измерения происходят от середины объекта, чтобы они могли симпатично выглядеть с различными размерами.

Screen.Width и Screen.Height являются шириной и высотой эерана в твипах [ мои прим.: чтобы получить высоту и ширину экрана в пикселах ( разрешение), эти значения на просто поделить на количество твипов на один пиксел по игреку и

Page 20: 7 1 C : 0 Visual Basicbnbars.moy.su/PDF/azbuka_visual_basic.pdf · Азбука Visual Basic Часть 1 Предисловие Нашёл я этот учебник на территории

иксу: Screen.TwipsPerPixelX и Screen.TwipsPerPixelY] . Эти значения могут быть считаны только в ходе программы и никогда не могут быть изменены.

6. Элементы управления и их свойства

6.1 Кнопки (Button)

Командные кнопки (button) применяются чаще всего и являются простейшими элементами управления: как правило - это такие серые ящички, на которых находится текст, как например, "OK" или " Отмена", и по которым просто кликают.

Особенные свойства: Если свойство Cancel установлено как истинно (True), то кнопка будет реагировать на каждое нажатие кнопки Esc. Свойство Default действует тоже только тогда, когда установлено на True. Оно " садит" на кнопку чёрную рамку, которая означает, что кнопка реагирует на все нажатия кнопки Enter. При помощи свойства Font можно изменять вид и стиль шрифта на кнопке.

События: Нужно собственно только событие Click ( кнопка нажата)

6.2 Таймер

Таймер назван так правильно: он никакой не настоящий элемент управления и на окне невидим, если программа запущена. Всё, что он делает - это в через определённые отрезки времени выполняет какое- нибудь событие, событие Timer'a. Много таймеров применять не надо, т. к. в Windows'e постоянно имеется максимум 16 таймеров одновременно. [ мои. прим.: теперь речь идёт видимо о ранних версиях Windows и VB, т. к. сейчас таёмеров можно вешать сколько угодно]

Особенные свойства: Свойство Interval задаёт отрезок времени между двумя процедурами таймера в миллисекундах. Чтобы таймер работал свойство Enabled должо быть установленно на True.

События: Имеется только событие таймера ( см. выше).

6.3 Линии и фигуры

Два этих элементов управления для того, чтобы украшать окна программы линиями, кругами, прямоугольниками и другими фигурами. Исполнять какие- либо события они не могут!

Особенные свойства линии: Свойство BorderWidth определяет толщину линии. Со свойством BorderStyle из обычной линии можо сделать к примеру прерывистую линию - однако если её толщина не толще 1, то видно её очень плохо. X1, Y1, X2 и Y2 определяют координаты начальной точки(1) и конечной точки(2) линии. При помощи изменений этих своёств из программы можно заставлять эти линии " двигаться". И, наконец, свойств BorderColor определяет цвет линии.

Особенные свойства фигуры: Свойство Shape определяет что за геометрическую фигуру должна принять сама фигура: прямоугольник, квадрат. овал, круг, прямоугольник с закругленными углами и такой же квадрат. Три свойства Border... определяют вид рамки фигуры по цвету, стилю и толщине. Должна ли фигура быть заполнена цветом определяет свойство BackStyle. Цвет заднего фона определяет свойство BackColor. Для стиля заполнения фигуры цветом можно выбрать шесть стилей ( свойство FillStyle) и, конечно же, заполнить фигуру можно любым цветом ( FillColor- свойство).

6.4 Текстовое поле и поле надписи

Page 21: 7 1 C : 0 Visual Basicbnbars.moy.su/PDF/azbuka_visual_basic.pdf · Азбука Visual Basic Часть 1 Предисловие Нашёл я этот учебник на территории

В текстовомм поле пользователь должен вводить текст, который потом может быть использован в программе, например его имя или очки игры. На экране видно ящичек, в котором, если на него кликнуть, появится курсор. Поле надписи ( этикетка, Label) используется, чтобы показывать текст, который пользователь не может изменить.

Особенные свойства текстового поля: Одно текстовое поле имеет 37 (!) свойств, и поэтому я объясню только важнейшие: свойство Text содержит текст, который высвечивается в поле или то, которое задал пользователь. При помощи свойства MaxLenght можно ограничивать число вводимых символов. Если это свойство установленно на нуль - ввод не ограничен ( кроме памяти компьютера!). C о свойствами Font... можно использовать другие вилы и стили шрифта, мо свойством Alignment можно определять положения текста в текстовом поле ( центрирование, выравнять по левому/ правому краю).

Особенные свойства поля надписи: Многие свойства абсолютно одинаковы со свойствами тексового поля, как например события Font... и Alignment. Однако текст находится в событии Caption.

События: Для текстового поля прежде всего важно событие LostFocus, которое происходит каждый раз, когда пользователь активирует другой объект. Это самый подходящий момент для программы, чтобы среагировать на изменённый пользователем текст.

6.4 Графическое поле

Графическое поле отображает графику, которая была сохранена, как .bmp или .ico файл. При этом будет показана только часть картинки. которая, которая поместилась в размеры графического поля. Если написать процедуру для события Click, можно использовать графическое поле, как красивую кнопку.

Особенные свойства графического поля: Графическое поле имеет даже 46 свойств, даже больше чем текстовое: свойство Picture определяет, какая картинка должна быть показана. Изменять его можно в режиме design и в ходе программы. Например, чтобы графическое поле приняло картинку другого графического поля, которое может быть невидимо. Припомощи свойства AutoSize можно устанавливать " авторазмеры" графического поля, т. е. оно примет размеры введённой картинки. Кроме того здесь находятся многие свойства предыдущих элементов управления.