
- •6.1. Объекты – экземпляры класса 11
- •6.2. Графические объекты. Рисуем и пишем. 22
- •Глава 7. Разветвляющиеся программы 45
- •Глава 8. Циклические программы 94
- •Глава 9. Отладка программы 133
- •Глава 10. Типичные приемы программирования 144
- •10.3.1. Пример 154
- •Глава 11. Процедуры и функции 167
- •11.3. Области видимости переменных 208
- •11.4. Функции 222
- •11.5. Переменные и параметры объектного типа 239
- •Глава 12. Графика – 2 259
- •Глава 13. Работа с таймером, временем, датами 320
- •Глава 14. Работа с мышью и клавиатурой 392
- •Глава 15. Массивы, рекурсия, сортировка 440
- •Глава 16. Разные звери в одном ковчеге 479
- •Объекты – экземпляры класса
- •Понятие объекта, как экземпляра класса
- •Создаем объекты из класса
- •Невидимый код в окне кода – Windows Form Designer generated code
- •Удобство визуального программирования
- •Класс – это программа
- •Невидимые объекты
- •Графические объекты. Рисуем и пишем.
- •Класс Graphics
- •Первая нарисованная линия
- •Рисуем отрезки, прямоугольники, круги, эллипсы
- •Рисуем дуги, сектора и закрашенные фигуры
- •Рисуем на нескольких элементах управления
- •Переменные и выражения вместо чисел
- •Методы, «придирчивые» к типу параметров
- •Разветвляющиеся программы
- •Что такое выбор (ветвление)
- •Условный оператор If или как компьютер делает выбор
- •Разбираем оператор If на примерах
- •Правила записи однострочного оператора If
- •Еще примеры и задания
- •Случайные величины
- •Функции Rnd и Randomize
- •Проект «Звездное небо».
- •Многострочный If
- •Разбираем многострочный If на примерах
- •Правила записи многострочного If
- •If условие Then операторы ElseIf операторы
- •Ступенчатая запись программы
- •Вложенные операторы If. Логические операции и выражения
- •Вложенные операторы If
- •Логические операции And, Or, Not
- •Логические выражения
- •Логический тип данных Boolean
- •Оператор варианта Select Case
- •Улучшаем калькулятор
- •Проверка ввода чисел в текстовое поле
- •Запрет деления на ноль
- •Ставим пароль на калькулятор
- •Функция MsgBox
- •Циклические программы
- •Оператор перехода GoTo. Цикл. Метки
- •Цикл с GoTo. Метки
- •Зацикливание
- •Примеры
- •Движение объектов по экрану
- •Выход из цикла с помощью If
- •Операторы цикла Do
- •Оператор Do …. Loop
- •Оператор Do …. Loop While
- •Оператор Do …. Loop Until
- •Оператор Do While …. Loop
- •Оператор Do Until …. Loop
- •Разница между вариантами операторов Do
- •Примеры и задания
- •Оператор Exit Do
- •Оператор цикла While …End While
- •Оператор цикла For
- •Объясняю For на примерах
- •Шаг цикла
- •Синтаксис и работа оператора For
- •Оператор Exit For
- •«Мыльные пузыри» и другие шалости
- •Используем в рисовании переменные величины
- •Отладка программы
- •Типичные приемы программирования
- •Вычисления в цикле
- •Роль ошибок в программе
- •Счетчики и сумматоры
- •Счетчики
- •Сумматоры
- •Вложенные операторы
- •Вложенные циклы – «Таблица умножения»
- •Вложенные циклы – «Небоскреб»
- •Поиск максимума и минимума
- •Процедуры и функции
- •Процедуры
- •Понятие о процедурах пользователя
- •Пример процедуры пользователя
- •Понятие о процедурах с параметрами
- •Пример процедуры с параметрами
- •Вызов процедур из процедуры пользователя
- •Операторы Stop, End и Exit Sub
- •Проект «Парк под луной»
- •Задание на проект
- •От чисел – к переменным
- •От переменных – к параметрам
- •Делим задачу на части
- •Программируем части по-отдельности
- •Серп молодого месяца или «в час по чайной ложке»
- •Земля, пруд, три дерева и два фонаря
- •Ряд деревьев
- •Ряд фонарей и аллея
- •Два способа программирования
- •Области видимости переменных
- •Создание, инициализация и уничтожение переменных
- •Области видимости переменных
- •Зачем нужны разные области видимости
- •Область видимости – блок
- •Статические переменные
- •Функции
- •Передача параметров по ссылке и по значению
- •Из чего состоит тело процедуры. Выражения
- •Функции
- •Константы
- •Переменные и параметры объектного типа
- •Переменные объектного типа
- •Параметры объектного типа
- •Соответствие типов
- •Соответствие объектных типов
- •Неопределенные параметры, произвольное число параметров
- •Что такое методы
- •Пользуемся подсказкой, чтобы узнать объектные типы
- •Параметры методов
- •Графика – 2
- •Точки и прямоугольники
- •Прямоугольник
- •Использование Точки и Прямоугольника в графических методах
- •Собственные перья, кисти и шрифты
- •Создаем собственные перья. Конструктор
- •Создаем собственные кисти
- •Работа с картинками
- •Картинка, как свойство Image элемента управления
- •Растровая и векторная графика
- •Рисуем картинки
- •Размер и разрешение картинок
- •Метод DrawImage и его варианты
- •Метод RotateFlip объекта Bitmap
- •Метод Save объекта Bitmap
- •Рисуем в памяти
- •Перерисовка картинок, фигур и текста
- •Текстурная кисть
- •Работа с цветом
- •Системные цвета
- •Функция FromArgb
- •Прозрачность
- •Как узнать цвет точки на фотографии
- •Преобразования системы координат
- •Встроенный графический редактор vb
- •Работа с таймером, временем, датами
- •Тип данных DateTime (Date)
- •Переменные и литералы типа DateTime
- •Свойства и методы структуры DateTime
- •Свойства и методы модуля DateAndTime
- •Значения строкового параметра для функций работы с датами:
- •Форматирование даты и времени
- •Перечисления
- •Рамка (GroupBox), панель (Panel) и вкладка (TabControl)
- •Рамка (GroupBox)
- •Панель (Panel)
- •Вкладка (TabControl)
- •Проект «Будильник-секундомер»
- •Постановка задачи
- •Делим проект на части
- •Делаем часы
- •Занимаемся датой
- •Занимаемся днем недели
- •Делаем будильник
- •Делаем секундомер
- •Рисуем бордюры вокруг рамок
- •Полный текст программы «Будильник-секундомер»
- •Недоработки проекта
- •Таймер и моделирование
- •Анимация
- •Суть анимации
- •Движем объекты
- •«Движем» свойства объектов
- •Мультфильм «Летающая тарелка»
- •Мультфильм «Человечек»
- •Работа с мышью и клавиатурой
- •Фокус у элементов управления
- •Работа с мышью
- •Основные события, связанные с мышью
- •Подробности событий мыши. Класс MouseEventArgs
- •Две задачи: Глаз-ватерпас и Мышка-карандаш
- •Работа с клавиатурой
- •Событие KeyPress. Класс KeyPressEventArgs. Структура Char
- •События KeyDown и KeyUp. Класс KeyEventArgs
- •Проект – Гонки (игра)
- •Постановка задачи
- •Делим проект на части
- •Первая часть – рисуем поле для гонки
- •Вторая часть – управляем машиной
- •Третья часть – Поведение машины, организация счетчиков и пр.
- •Недоработки проекта
- •Гонки двух автомобилей
- •Задания на проекты
- •Часть III. Программирование на vb – второй уровень
- •Массивы, рекурсия, сортировка
- •Переменные с индексами
- •Одномерные массивы
- •Основы работы с одномерными массивами
- •Мощь одномерных массивов
- •Двумерные массивы
- •Какие бывают массивы
- •Использование массивов при программировании игр
- •Массивы как объекты
- •Массивы как параметры
- •Массивы элементов управления
- •Индукция. Рекурсия
- •Сортировка
- •Простая сортировка
- •Метод пузырька
- •Разные звери в одном ковчеге
- •Коллекции
- •Создание коллекции, методы коллекции
- •Оператор цикла For Each
- •Коллекции, принадлежащие контейнерам
- •Структуры
- •Оператор With
- •Алфавитный указатель
- •Специально для http://all-ebooks.Com
Оператор With
Когда мы используем длинные имена структур или объектов или глубоко вложенные друг в друга конструкции, обращение к элементам таких структур или объектов занимает в окне кода довольно много места. Например:
Игра(29).Графика.Хорошая = True
Игра(29).Графика.Число_цветов = 65000000
Игра(29).Графика.Максимальное_разрешение = "1280х960"
Оператор With позволяет сократить запись. Вот фрагмент, равносильный предыдущему:
With Игра(29).Графика
. Хорошая = True
. Число_цветов = 65000000
. Максимальное_разрешение = "1280х960"
End With
Как видите, оператор With не производит никаких действий. Он просто позволяет перенести в свой заголовок одинаковую левую часть из всех обращений к элементам объекта или структуры, за счет чего эти обращения могут быть записаны в укороченном виде.
Алфавитный указатель
A
A
312
Add
15
484
AddDays
323
AddSeconds
325
AddTicks
325
AddYears
325
Alt
409
And
69
Array
462
AutoScroll
344
346
AutoSize
278
B
B
311
BackgroundImage
278
Bitmap
283
Boolean
74
Breakpoint Properties
139
Breakpoints
136
Brushes
29
Button
399
ByRef
225
ByVal
225
C
Call
175
Call Stack
143
CenterImage
278
Char
405
Clear
33
463
Click
396
398
Clicks
399
Collection
482
Color
267
271
311
Command Window-Immediate
141
Const
238
Control
241
409
Controls
15
486
Count
484
D
DashStyle
269
Date
320
324
DateAdd
329
DateAndTime
327
DateDiff
327
DatePart
328
DateSerial
329
DateString
329
DateTime
320
322
DateValue
329
Day
324
DayOfWeek
323
324
DayOfYear
324
DaysInMonth
326
Debug
143
Dispose
34
Do
106
107
112
Do …. Loop
107
Do …. Loop Until
109
Do …. Loop While
108
Do Until …. Loop
111
Do While …. Loop
110
DoubleClick
396
398
DrawArc
29
DrawEllipse
27
DrawImage
284
290
Drawing
22
DrawLine
23
26
DrawPie
30
DrawRectangle
26
DrawString
36
E
Else
47
ElseIf
63
End
87
183
185
End Function
234
End If
64
End Sub
169
EndCap
270
Enter
392
Enum
338
EventArgs
399
Exit Do
115
Exit For
123
Exit Sub
185
F
False
74
FillEllipse
29
FillPie
30
FillRectangle
29
Flip
292
Focus
395
Font
274
FontStyle
274
For
117
119
122
For Each
485
FORMULA
52
FromArgb
306
308
FromFile
278
FromImage
297
Function
233
G
G
311
GetPixel
311
GetUpperBound
462
GoTo
96
Graphics
22
GraphicsUnit
292
GroupBox
342
H
Handled
410
HatchBrush
271
273
HatchStyle
273
Height
288
HorizontalResolution
288
Hour
324
I
Icon
283
286
If
47
47
68
If блочный
60
If вложенные
68
If многострочный
60
If однострочный
51
Image
278
278
283
300
Image Editor
317
In
483
IndexOf
463
Inflate
262
IntelliSense
254
Is
79
IsDate
330
IsDigit
406
IsLeapYear
326
IsLetter
406
IsLetterOrDigit
406
IsLower
406
IsNumeric
85
IsPunctuation
406
IsSeparator
406
IsUpper
406
J
JPEG
387
K
KeyChar
405
KeyCode
407
KeyDown
404
407
KeyEventArgs
407
KeyPress
404
KeyPressEventArgs
405
KeyPreview
409
427
Keys
409
KeyUp
404
407
L
LastIndexOf
463
Leave
392
Left
400
Length
462
LinearGradientBrush
271
271
272
LineCap
270
Locals
135
Loop
107
M
MakeTransparent
386
Metafile
283
286
Middle
400
Minute
324
Month
324
MonthName
329
MouseDown
396
399
MouseEnter
396
MouseEventArgs
399
MouseLeave
396
MouseMove
396
397
404
MouseUp
396
MsgBoxResult
91
MsgBoxStyle
90
N
New
15
265
Next
119
None
401
Normal
278
Not
72
Nothing
279
Now
326
O
Object
240
479
Or
71
276
P
Paint
298
Panel
343
PasswordChar
88
88
PathGradientBrush
271
Pen
265
Pens
24
PictureBox
278
Point
259
PointF
260
Q
Quick Watch
141
R
R
311
Randomize
56
ReadOnly
411
Rectangle
261
RectangleF
261
Refresh
300
Remove
485
Resolution
287
Return
234
Reverse
463
Right
400
Rnd
56
Rotate
292
RotateFlip
292
RotateTransform
316
Run To Cursor
137
S
Save
294
ScaleTransform
314
Second
324
Select Case
77
SetPixel
312
SetResolution
290
Shift
409
Size
260
SizeF
260
SizeMode
278
SolidBrush
270
271
Sort
463
StartCap
270
Static
222
Step
120
Stop
184
StretchImage
278
Structure
489
Sub
168
SystemBrushes
305
SystemColors
305
SystemPens
305
T
Tab Order
395
TabControl
344
TabIndex
395
TabPage
344
TabStop
395
TextureBrush
271
301
Then
47
Ticks
325
Timer
330
TimeSerial
329
TimeSpan
322
TimeString
330
TimeValue
329
To
79
119
Today
327
ToLocalTime
326
ToLongDateString
326
ToLongTimeString
326
ToLower
406
ToShortTimeString
326
ToString
326
401
ToUniversalTime
326
ToUpper
406
TranslateTransform
315
True
73
TypeName
485
U
Until
109
V
Visual Studio .NET
10
W
Watch
137
WeekdayName
329
While
109
While …End While
117
Width
267
288
Windows Form Designer generated code
17
With
493
WrapMode
302
X
X
399
Y
Y
399
Year
324
MsgBox
89
#
#
321
<
<
52
52
<>
52
>
>
52
52
а
адрес
226
алфавитно-цифровая клавиша
405
анимация
376
б
база данных
490
блок
219
булевский тип
75
в
векторная графика
281
верхняя граница индекса
443
ветвление
45
46
визуальное программирование
19
вкладка
344
вложенные циклы
154
159
выбор
45
46
вызов процедуры
170
выражение
229
выход из цикла
102
г
гарнитура
274
градиентная заливка
272
графика
11
259
графический редактор VB
317
графическое поле
22
д
движение
100
двумерные массивы
449
дополнительная цифровая клавиатура
408
дуга
29
е
если
47
з
заголовок процедуры
168
закладка
344
заливка
270
запись
490
зацикливание
97
знак сравнения
52
И
И
69
ИЛИ
71
и
иначе
47
индекс
440
484
индексированные переменные
440
индукция
468
инициализация
209
инициализация двумерного массива
452
инициализация массива
444
И
Истина
74
и
итерация
99
к
кисть
29
клавиатура
404
класс
19
ключ
484
коллекция
481
константы
237
конструктор
265
контейнер
486
круг
24
л
логические выражения
73
логические операции
69
логические переменные
74
Л
Ложь
74
л
локальные переменные
213
м
максимум
163
массив
440
442
массивы как объекты
462
массивы как параметры
464
массивы многомерные
455
массивы одномерные
442
массивы структур
491
массивы элементов управления
465
метка
96
метод пузырька
475
475
методы
41
246
248
253
минимум
163
моделирование
375
модель
375
модульные переменные
213
мышь
396
Н
НЕ
72
о
области видимости
208
обращение к процедуре
170
обращение к функции
230
233
объектный тип
14
объекты
11
объявление процедуры
170
объявление функции
233
оператор безусловного перехода
96
оператор варианта
76
оператор цикла
106
отладка
133
отрезок
24
ошибки
146
п
панель
343
параметры
26
178
252
пароль
87
передача параметров по значению
227
передача параметров по ссылке
227
переменная цикла
120
переменные величины
127
190
переменные уровня модуля
213
перечисления
337
перо
24
побочный эффект
237
прозрачность
308
простые типы данных
490
процедуры
167
процедуры обработки событий
171
процедуры пользователя
169
процедуры с параметрами
176
прямоугольник
24
261
р
разветвляющиеся программы
45
размер
260
размер картинок
286
разрешение
287
разрешение картинок
286
рамка
342
растровая графика
281
рекурсия
468
с
сектор
30
синтаксис
51
синтаксическая схема
51
система координат
314
система управления базами данных
490
системные цвета
303
случайные величины
55
соответствие типов
246
сортировка
472
составные типы данных
490
ссылка
226
статические переменные
222
страница
344
структуры
487
ступенчатая запись программы
66
сумматор
152
счетчик
147
счетчик циклов.
99
т
таймер
334
текстурная кисть
300
тело процедуры
170
233
тело цикла
97
108
тик
325
точка
259
точки прерывания
136
у
управляющие клавиши
405
условие
52
условный оператор
47
ф
фокус
392
форматирование
330
функции
222
230
функции пользователя
231
функциональные клавиши
405
ц
цикл
95
циклические программы
94
ч
числа Фибоначчи
441
ш
шаг цикла
120
шрифты
274
штрихованая кисть
273
э
экземпляры класса
11
эллипс
24