Кому предназначена эта книга?
С.Н.Лукин
Самоучитель
Том 1 (из 3)
Все права защищены ©
Содержание Введение. 15 Кому предназначена эта книга?. 15 Примеры и задачи. 16 Кратко о .NET Framework и о Visual Studio .NET. 18 Почему Visual Basic, а не C++?. 19 Почему Visual Basic .NET, а не старый Visual Basic?. 19 Отличия Visual Studio .NET 2005 от 2003 и от Visual Studio.NET. 20 Какие вам нужны компьютер и Windows?. 20 Краткое содержание с рекомендациями. 20 Часть I. Программирование без программирования. 22 Глава 1. Первые шаги.. 23 1.1. Что такое программа на VB?. 23 1.2. Не программа, а проект. 25 1.3. Первые шаги – за ручку. 26 1.3.1. Запускаем Visual Studio .NET. 26 1.3.2. Создаем проект.. 28 1.3.3. Размещаем объекты на форме. 31 1.3.4. Пробный запуск. 33 1.3.5. Пишем программу. 34 1.3.6. Сохранение, закрытие, открытие, создание проекта, выход из VS. 37 1.3.7. Работа с файлами и папками в окнах Open Project и Open File. 39 1.3.8. Как VB реагирует на наши ошибки. 43 1.3.9. Усложняем проект.. 47 1.3.10. Дальнейшее усложнение. 49 1.4. Порядок работы над проектом в VB. 51 1.5. Что дальше?. 52 Глава 2. Объекты и пространства имен. 53 2.1. Вглубь пространства имен. 53 2.1.1. Beep. 54 2.1.2. Debug.WriteLine. 55 2.1.3. Выводы. 56 2.2. Экономим чернила. 57 2.2.1. Первый способ – опускаем названия пространств имен. 57 2.2.2. Знакомимся с некоторыми объектами. 57 2.2.3. Второй способ – Imports. 60 Глава 3. Фейерверк возможностей.. 61 3.1. Задание на проект «Калькулятор». 61 3.2. Проектируем. 61 3.2.1. Окно свойств. 62 3.2.2. Метки. Свойства: имя, текст, шрифт.. 64 3.3. Программируем. Проект готов. 67 3.4. Свойства из окна свойств. 68 3.4.1. Общие свойства. 69 3.4.2. Свойства текстового поля. 72 3.4.3. Свойства формы. 73 3.5. Положение объекта на экране. Система координат. 74 3.6. Помещаем фото на объекты.. 76 3.7. Вывод сообщений – MsgBox. 78 3.8. Главное меню.. 79 3.8.1. Ставим задачу. 79 3.8.2. Создаем меню. 79 3.8.3. Заставляем меню работать. 81 3.9. Как мы в дальнейшем улучшим наш калькулятор. 83 3.10. Звук и видео. Проект «Плеер». 83 3.11. События и их обработка. 88 3.12. Разные необходимые вещи. 92 3.12.1. Комментарии. 93 3.12.2. Перенос длинного оператора на следующую строку. 93 3.12.3. Запись нескольких операторов в одной строке. 94 3.12.4. Запускаем наши программы без VS. 94 Глава 4. Работа в среде Visual Studio .NET.. 95 4.1. Инсталляция Visual Studio .NET. 95 4.2. Окна среды Visual Studio .NET. 102 4.2.1. Передвигаем и настраиваем окна. 103 4.2.2. Solution Explorer 109 4.2.3. Toolbox. 110 4.2.4. Object Browser 111 4.3. Стартовая страница. 115 4.4. Главное меню Visual Studio .NET. 116 4.4.1. File. 116 4.4.2. Edit 116 4.4.3. View. 117 4.4.4. Project 117 4.4.5. Build, Debug, Data. 117 4.4.6. Format 117 4.4.7. Tools. 118 4.4.8. Window. 121 4.4.9. Help. 122 4.5. Панели инструментов. 123 4.6. Перенос вашего проекта на другие компьютеры.. 125 4.6.1. Первый этап – подготовка проекта. 126 4.6.2. Второй этап – создание инсталляционного пакета. 126 4.6.3. Третий этап - инсталляция. 133 Часть II. Программирование на VB – первый уровень. 136 Глава 5. Переменные величины... 137 5.1. Понятие о переменных величинах. Оператор присваивания. 137 5.1.1. Понятие об операторе присваивания. 137 5.1.2. Как увидеть значение переменной величины. 138 5.1.3. Какая польза от переменных величин?. 139 5.1.4. Смысл оператора присваивания. 139 5.2. Объявление переменных величин. 140 5.2.1. InputBox. 141 5.2.2. При объявлении нужно указывать тип. 142 5.2.3. Типы переменных в VB. 143 5.2.4. Почему нельзя не объявлять переменные величины. 145 5.3. Переменные величины и память. 146 5.3.1. Что делает оператор присваивания с памятью. 146 5.3.2. Режим прерывания. Пошаговый режим выполнения программы. 147 5.3.3. Оператор присваивания меняет значения переменных величин. 149 5.3.4. Имена переменных. Ключевые слова VB. 151 5.4. Числовые переменные. Математика. Точность. 153 5.4.1. Математические действия и функции. 153 5.4.2. Числовые типы данных. 157 5.4.3. Integer, Long, Short, Byte – целые числа. 158 5.4.4. Single и Double – десятичные дроби. 159 5.4.5. Целые числа или десятичные дроби? Числовой тип Decimal 160 5.4.6. Преобразование типов. 161 5.4.7. Форматирование чисел. 163 5.4.8. Еще о пользе переменных. 166 5.4.9. Префиксы. 168 5.5. Порядок создания простого вычислительного проекта. 168 5.6. Строковые переменные. 171 5.6.1. Знакомимся со строками. 172 5.6.2. Диалог с компьютером. 174 5.6.3. Оглядимся вокруг. 175 Глава 6. Графика – 1. 176 6.1. Объекты – экземпляры класса. 176 6.1.1. Понятие объекта, как экземпляра класса. 176 6.1.2. Создаем объекты из класса. 177 6.1.3. Невидимый код в окне кода – Windows Form Designer generated code. 179 6.1.4. Удобство визуального программирования. 180 6.1.5. Класс – это программа. 181 6.1.6. Невидимые объекты. 181 6.2. Графические объекты. Рисуем и пишем. 182 6.2.1. Класс Graphics. 182 6.2.2. Первая нарисованная линия. 183 6.2.3. Рисуем отрезки, прямоугольники, круги, эллипсы. 184 6.2.4. Рисуем дуги, сектора и закрашенные фигуры. 186 6.2.5. Рисуем на нескольких элементах управления. 188 6.2.6. Пишем. 191 6.2.7. Переменные и выражения вместо чисел. 192 6.2.8. Методы, «придирчивые» к типу параметров. 194 Глава 7. Разветвляющиеся программы... 197 7.1. Что такое выбор (ветвление) 197 7.2. Условный оператор If или как компьютер делает выбор. 198 7.2.1. Разбираем оператор If на примерах. 198 7.2.2. Правила записи однострочного оператора If 200 7.2.3. Еще примеры и задания. 202 7.3. Случайные величины.. 203 7.3.1. Функции Rnd и Randomize. 203 7.3.2. Проект «Звездное небо». 204 7.4. Многострочный If 206 7.4.1. Разбираем многострочный If на примерах. 206 7.4.2. Правила записи многострочного If 208 7.4.3. Ступенчатая запись программы. 209 7.5. Вложенные операторы If. Логические операции и выражения. 210 7.5.1. Вложенные операторы If 210 7.5.2. Логические операции And, Or, Not 211 7.5.3. Логические выражения. 213 7.5.4. Логический тип данных Boolean. 214 7.6. Оператор варианта Select Case. 215 7.7. Улучшаем калькулятор. 219 7.7.1. Проверка ввода чисел в текстовое поле. 219 7.7.2. Запрет деления на ноль. 220 7.7.3. Ставим пароль на калькулятор. 221 7.8. Функция MsgBox. 222 Глава 8. Циклические программы... 225 8.1. Оператор перехода GoTo. Цикл. Метки. 225 8.1.1. Цикл с GoTo. Метки. 226 8.1.2. Зацикливание. 226 8.1.3. Примеры. 227 8.1.4. Движение объектов по экрану. 229 8.2. Выход из цикла с помощью If 229 8.3. Операторы цикла Do. 232 8.3.1. Оператор Do …. Loop. 232 8.3.2. Оператор Do …. Loop While. 233 8.3.3. Оператор Do …. Loop Until 234 8.3.4. Оператор Do While …. Loop. 235 8.3.5. Оператор Do Until …. Loop. 235 8.3.6. Разница между вариантами операторов Do. 236 8.3.7. Примеры и задания. 236 8.3.8. Оператор Exit Do. 238 8.3.9. Оператор цикла While …End While. 239 8.4. Оператор цикла For 239 8.4.1. Объясняю For на примерах. 239 8.4.2. Шаг цикла. 241 8.4.3. Синтаксис и работа оператора For 242 8.4.4. Оператор Exit For 243 8.4.5. «Мыльные пузыри» и другие шалости. 243 8.5. Используем в рисовании переменные величины.. 245 Глава 9. Отладка программы... 249 Глава 10. Типичные приемы программирования. 256 10.1. Вычисления в цикле. 256 10.1.1. Пример. 256 10.1.2. Роль ошибок в программе. 257 10.2. Счетчики и сумматоры.. 258 10.2.1. Счетчики. 258 10.2.2. Сумматоры. 261 10.3. Вложенные операторы.. 262 10.3.1. Пример. 262 10.3.2. Вложенные циклы – «Таблица умножения». 262 10.3.3. Вложенные циклы – «Небоскреб». 265 10.4. Поиск максимума и минимума. 268 Глава 11. Процедуры и функции.. 270 11.1. Процедуры.. 270 11.1.1. Понятие о процедурах пользователя. 270 11.1.2. Пример процедуры пользователя. 272 11.1.3. Понятие о процедурах с параметрами. 275 11.1.4. Пример процедуры с параметрами. 277 11.1.5. Вызов процедур из процедуры пользователя. 278 11.1.6. Операторы Stop, End и Exit Sub. 279 11.2. Проект «Парк под луной». 281 11.2.1. Задание на проект.. 281 11.2.2. От чисел – к переменным. 283 11.2.3. От переменных – к параметрам. 284 11.2.4. Делим задачу на части. 286 11.2.5. Программируем части по-отдельности. 287 11.2.6. Серп молодого месяца или «В час по чайной ложке». 288 11.2.7. Земля, пруд, три дерева и два фонаря. 289 11.2.8. Ряд деревьев. 289 11.2.9. Ряд фонарей и аллея. 291 11.2.10. Два способа программирования. 293 11.3. Области видимости переменных. 293 11.3.1. Создание, инициализация и уничтожение переменных. 294 11.3.2. Области видимости переменных. 294 11.3.3. Зачем нужны разные области видимости. 298 11.3.4. Область видимости – блок. 299 11.3.5. Статические переменные. 301 11.4. Функции 301 11.4.1. Передача параметров по ссылке и по значению. 302 11.4.2. Из чего состоит тело процедуры. Выражения. 305 11.4.3. Функции. 306 11.4.4. Константы. 310 11.5. Переменные и параметры объектного типа. 311 11.5.1. Переменные объектного типа. 311 11.5.2. Параметры объектного типа. 312 11.5.3. Соответствие типов. 314 11.5.4. Соответствие объектных типов. 315 11.5.5. Неопределенные параметры, произвольное число параметров. 316 11.5.6. Что такое методы. 316 11.5.7. Пользуемся подсказкой, чтобы узнать объектные типы. 317 11.5.8. Параметры методов. 319 11.5.9. IntelliSense. 320 Глава 12. Графика – 2. 324 12.1. Точки и прямоугольники. 324 12.1.1. Точка. 324 12.1.2. Размер. 325 12.1.3. Прямоугольник. 325 12.1.4. Использование Точки и Прямоугольника в графических методах. 325 12.2. Собственные перья, кисти и шрифты.. 327 12.2.1. Создаем собственные перья. Конструктор. 327 12.2.2. Создаем собственные кисти. 331 12.2.3. Шрифты. 333 12.3. Работа с картинками. 335 12.3.1. Картинка, как свойство Image элемента управления. 336 12.3.2. Растровая и векторная графика. 338 12.3.3. Рисуем картинки. 339 12.3.4. Размер и разрешение картинок. 341 12.3.5. Метод DrawImage и его варианты. 344 12.3.6. Метод RotateFlip объекта Bitmap. 345 12.3.7. Метод Save объекта Bitmap. 346 12.4. Рисуем в памяти. 346 12.5. Перерисовка картинок, фигур и текста. 348 12.6. Текстурная кисть. 350 12.7. Работа с цветом. 351 12.7.1. Системные цвета. 351 12.7.2. Функция FromArgb. 353 12.7.3. Прозрачность. 354 12.7.4. Как узнать цвет точки на фотографии. 356 12.8. Преобразования системы координат. 358 12.9. Встроенный графический редактор VB. 360 Глава 13. Работа с таймером, временем, датами.. 362 13.1. Тип данных DateTime (Date) 362 13.1.1. Переменные и литералы типа DateTime. 362 13.1.2. Свойства и методы структуры DateTime. 363 13.1.3. Свойства и методы модуля DateAndTime. 366 13.1.4. Форматирование даты и времени. 368 13.2. Таймер 369 13.3. Перечисления. 371 13.4. Рамка (GroupBox), панель (Panel) и вкладка (TabControl) 374 13.4.1. Рамка (GroupBox) 374 13.4.2. Панель (Panel) 375 13.4.3. Вкладка (TabControl) 376 13.5. Проект «Будильник-секундомер». 378 13.5.1. Постановка задачи. 378 13.5.2. Делим проект на части. 380 13.5.3. Делаем часы. 381 13.5.4. Занимаемся датой. 382 13.5.5. Занимаемся днем недели. 383 13.5.6. Делаем будильник. 383 13.5.7. Делаем секундомер. 387 13.5.8. Рисуем бордюры вокруг рамок. 389 13.5.9. Полный текст программы «Будильник-секундомер». 390 13.5.10. Недоработки проекта. 393 13.5.11. Таймер и моделирование. 393 13.6. Анимация. 395 13.6.1. Суть анимации. 395 13.6.2. Движем объекты. 396 13.6.3. «Движем» свойства объектов. 398 13.6.4. Мультфильм «Летающая тарелка». 399 13.6.5. Мультфильм «Человечек». 402 Глава 14. Работа с мышью и клавиатурой.. 405 14.1. Фокус у элементов управления. 405 14.2. Работа с мышью.. 407 14.2.1. Основные события, связанные с мышью. 407 14.2.2. Подробности событий мыши. Класс MouseEventArgs. 408 14.2.3. Две задачи: Глаз-ватерпас и Мышка-карандаш.. 410 14.3. Работа с клавиатурой. 411 14.3.1. Событие KeyPress. Класс KeyPressEventArgs. Структура Char 412 14.3.2. События KeyDown и KeyUp. Класс KeyEventArgs. 413 14.4. Проект – Гонки (игра) 415 14.4.1. Постановка задачи. 416 14.4.2. Делим проект на части. 417 14.4.3. Первая часть – рисуем поле для гонки. 417 14.4.4. Вторая часть – управляем машиной. 419 14.4.5. Третья часть – Поведение машины, организация счетчиков и пр. 425 14.4.6. Недоработки проекта. 427 14.4.7. Гонки двух автомобилей. 428 14.4.8. Задания на проекты. 428 Часть III. Программирование на VB – второй уровень. 431 Глава 15. Массивы, рекурсия, сортировка. 432 15.1. Переменные с индексами. 432 15.2. Одномерные массивы.. 433 15.2.1. Основы работы с одномерными массивами. 434 15.2.2. Мощь одномерных массивов. 435 15.3. Двумерные массивы.. 437 15.4. Какие бывают массивы.. 440 15.5. Использование массивов при программировании игр. 441 15.6. Массивы как объекты.. 445 15.7. Массивы как параметры.. 446 15.8. Массивы элементов управления. 446 15.9. Индукция. Рекурсия. 448 15.10. Сортировка. 451 15.10.1. Простая сортировка. 452 15.10.2. Метод пузырька. 453 Глава 16. Разные звери в одном ковчеге. 455 16.1. Тип Object 455 16.2. Коллекции. 456 16.2.1. Создание коллекции, методы коллекции. 456 16.2.2. Оператор цикла For Each. 458 16.2.3. Коллекции, принадлежащие контейнерам. 459 16.3. Структуры.. 460 16.4. Оператор With. 463 Глава 17. Графика – 3. 464 17.1. Сложные фигуры.. 464 17.1.1. Ломаная. 464 17.1.2. Ряд прямоугольников. 464 17.1.3. Многоугольник. 465 17.1.4. Кривая Безье. 466 17.1.5. Сплайн. 466 17.1.6. Графический путь. 467 17.2. Фигурные (непрямоугольные) формы.. 469 17.2.1. Создаем непрямоугольную форму. 469 17.2.2. Придаем экзотической форме подвижность. 470 17.2.3. Форма-лодочка или «и нашим – и вашим». 471 Глава 18. Элементы управления – 1. 473 18.1. Флажок (CheckBox) 473 18.2. Переключатель из радиокнопок (RadioButton) 475 18.3. Полосы прокрутки (ScrollBars) и ползунок (TrackBar) 477 18.4. Индикатор процесса (ProgressBar) 479 18.5. Списки (ListBox, ComboBox, CheckedListBox) 480 18.5.1. ListBox. 480 18.5.2. ComboBox. 482 18.5.3. Знакомство с CheckedListBox. 483 18.5.4. Свойства, события и методы списков. 483 18.5.5. Работа с CheckedListBox. 485 18.5.6. Это мы не будем проходить. 486 18.6. Календари (MonthCalendar и DateTimePicker) 487 18.7. Счетчик (NumericUpDown) 488 18.8. Всплывающая подсказка (ToolTip) 488 18.9. Контекстное меню.. 489 18.10. Метка с гиперссылкой (LinkLabel) 490 Глава 19. Строки и символы, файлы, обработка ошибок. 492 19.1. Строки и символы.. 492 19.1.1. Строки. Методы модуля Strings. 492 19.1.2. Символы (Char). Методы структуры Char 494 19.1.3. Строка как объект. Свойства и методы класса String. 496 19.2. Работа с файлами. 498 19.2.1. Механика работы с файлами. 498 19.2.2. Запись в текстовый файл. 499 19.2.3. Чтение из знакомого текстового файла. 500 19.2.4. Дозапись в текстовый файл. 502 19.2.5. Чтение из незнакомого текстового файла. 502 19.2.6. Изменение содержимого текстового файла. 503 19.2.7. Сохраняем игру. 505 19.2.8. Невидимый символ возврата каретки. 506 19.2.9. Типизированные файлы. «Старый» доступ к файлам. 508 19.2.10. Нетипизированные файлы. 513 19.2.11. Пример «Сейсмодатчик». 516 19.2.12. Создание, копирование, перенос, удаление файлов и папок. 518 19.3. Обработка ошибок. Исключения. Оператор Try. 521 Глава 20. Элементы управления – 2. 525 20.1. Из чего «собирается» приложение Windows. 525 20.2. Диалоговые окна открытия и сохранения файла. 526 20.2.1. Простейший текстовый редактор. 527 20.2.2. Настраиваем диалоговые окна. Фильтр, шаблон. 529 20.2.3. Настраиваем диалоговые окна. Отказ от сохранения или открытия. 530 20.3. Диалоговое окно настройки шрифта. 531 20.4. Элемент управления RichTextBox. 533 20.4.1. Усовершенствованный текстовый редактор. 533 20.4.2. Автоматическое заполнение поля текстом. 536 20.4.3. Работаем и с документами RTF и текстовыми файлами (txt) 537 20.5. ImageList – галерея (список) картинок. 538 20.6. Панель инструментов Toolbar 539 20.7. ListView 544 20.7.1. Создаем ListView вручную, в режиме проектирования. 544 20.7.2. Работаем с ListView в коде. 547 20.7.3. Другие полезные свойства и методы ListView. 550 20.8. TreeView.. 550 20.8.1. Создаем TreeView вручную, в режиме проектирования. 551 20.8.2. Заполняем TreeView в коде. 552 20.8.3. Работаем с TreeView в коде. 556 20.8.4. Деревья и искусственный интеллект.. 557 20.9. Диалоговое окно выбора цвета. 558 20.9.1. Элемент управления ColorDialog. 558 20.9.2. Проект – Графический редактор. 559 20.9.3. Как улучшить наш графический редактор. 562 20.10. Знакомство с другими элементами управления. 564 20.10.1. Строка состояния (StatusBar) 565 20.10.2. Splitter 565 20.10.3. Microsoft Chart Control 565 Глава 21. Создаем формы, модули, классы... 566 21.1. Проект без формы. Стандартные модули. 566 21.1.1. Проект с формой, но форму не показываем. 566 21.1.2. Проект без формы, но со стандартным модулем. 566 21.1.3. Консольное приложение. 569 21.2. Проект с несколькими формами. 570 21.3. Структура проекта и решения. Окно Solution Explorer. 574 21.3.1. Несколько модулей в проекте. 574 21.3.2. Решение (Solution). Несколько проектов в решении. 575 21.4. Создаем классы и объекты.. 577 21.5. Взаимодействие форм, модулей и классов в проекте. 578 21.6. Создаем несколько объектов из одного класса. 582 21.7. Создаем несколько объектов-форм из одного класса формы.. 583 21.8. «Все модули в одном». 584 21.9. Области видимости. 585 21.10. Затенение. 587 21.11. К чему все эти сложности?. 588 Глава 22. Объектное программирование. 591 22.1. Инкапсуляция – «Объект в футляре». 591 22.2. Создаем и используем два объекта одного класса. 593 22.3. Создаем и используем массив объектов одного класса. 596 22.4. Статические и динамические компоненты объектов. 598 22.5. Поля и свойства объектов. 599 22.6. Конструкторы.. 602 22.7. Наследование. 605 22.8. Полиморфизм. 608 22.9. Абстрактные классы.. 610 22.10. Перегрузка. 612 22.11. Конструкторы родителя и наследников. 614 22.12. Игра «Ловец». 617 22.12.1. Постановка задачи. 617 22.12.2. Таймер и общая механика работы проекта. 618 22.12.3. Начинаем проектирование. 619 22.12.4. Создаем ловца – первая ступень проекта. 619 22.12.5. Движем ловца – вторая ступень проекта. 621 22.12.6. Создаем шары. Завершаем проект.. 626 22.12.7. Как улучшить и развить проект.. 632 22.12.8. Наследуем шар. 632 22.13. Создаем события. 635 22.13.1. События элементов управления, созданных в программе. 636 22.13.2. Первый способ обработки событий: WithEvents и Handles. 636 22.13.3. Второй способ обработки событий: Оператор AddHandler 638 22.13.4. События в созданных нами классах. 640 22.13.5. Первый способ создания и обработки событий: WithEvents. 640 22.13.6. Второй способ создания и обработки событий: AddHandler 642 22.14. Наследуем элементы управления. 643 22.14.1. Пример. 644 22.14.2. Ловец и шар наследуют PictureBox. 646 22.15. Программа-шпион. 648 Глава 23. Visual Basic и Интернет. 651 23.1. Понятие об Интернет, Web-страницах и языке HTML. 651 23.2. Собственный браузер. 652 23.3. Создание Web-страницы.. 654 23.4. Сценарий на Web-странице. 656 23.5. Доступ к локальному диску. 659 23.6. Создание Web-страниц со сценариями в VB. 662 Глава 24. VB и базы данных. 666 24.1. Понятие о базах данных. 666 24.1.1. Постановка задачи. 667 24.2. Работа с базами данных в Microsoft Access. 668 24.2.1. Создание в Access файла базы данных и таблицы. 668 24.2.2. База данных с фото, видео и музыкой. 671 24.2.3. Запросы к базе данных. 673 24.3. Создание в VB файла базы данных и таблицы.. 675 24.3.1. Создание пустого файла базы данных в VB. 675 24.3.2. Создание пустой таблицы в VB. 675 24.4. Работа в VS с базами данных без проекта с помощью Server Explorer 676 24.4.1. Установка соединения с базой данных. 677 24.4.2. Работа в окне конструктора запросов. Заполняем таблицу данными. 680 24.4.3. Работа в панели Grid Pane. Выполняем запросы. 680 24.4.4. Язык SQL. Работаем с панелью SQL Pane конструктора запросов. 683 24.5. Работа с базами данных в проекте. 684 24.5.1. Создаем OleDbConnection, OleDbDataAdapter и DataSet 684 24.5.2. Базы данных и язык XML. 688 24.5.3. Программный доступ к каждой ячейке таблицы через DataSet 690 24.5.4. Программный доступ к каждой ячейке таблицы через DataGrid. 691 24.5.5. Задаем ширину и названия столбцов DataGrid. 692 24.5.6. Запросы на выборку из таблицы, создаваемые в режиме проектирования. 693 24.5.7. Запросы на выборку из таблицы, создаваемые в режиме работы. 695 24.5.8. Изменяем в коде содержимое таблицы, создаем и стираем таблицы. 698 24.5.9. Создаем соединение в коде. 701 Глава 25. Связь между приложениями Windows. 703 25.1. Собственные элементы управления. 703 25.1.1. Создание простейшего элемента управления. 703 25.1.2. Используем созданный элемент управления в проектах. 706 25.1.3. Более сложный пример – собственная кнопка. 707 25.1.4. Создаем кнопку. 707 25.1.5. Используем кнопку в проектах. 710 25.1.6. Отлаживаем элемент управления пользователя. 711 25.2. Собственная сборка. 711 25.2.1. Создаем сборку. 711 25.2.2. Используем сборку в других программах. 712 25.2.3. Добавляем в проект сборку из библиотеки классов.NET Framework. 714 25.3. Используем «старые» компоненты (COM) 714 25.4. Windows API 717 25.5. Запускаем из проекта другие программы.. 719 25.5.1. Функция Shell 719 25.5.2. Метод Start класса Process. 720 Глава 26. Создаем справочную систему (Help) 721 26.1.1. Задание на справочную систему. 721 26.1.2. Создаем файл проекта справки. 722 26.1.3. Создаем страницы справки. 723 26.1.4. Создаем оглавление (Contents) 724 26.1.5. Создаем алфавитный указатель (Index) 726 26.1.6. Компилируем проект справочной системы. 726 26.1.7. Привязываем справку к приложению Windows. 727 Глава 27. Разные важные вещи о VB.. 728 27.1. Грамматика VB. 728 27.1.1. Пространства имен. 728 27.1.2. Окно Class View. 731 27.1.3. Из чего состоят пространства имен. 732 27.1.4. Из чего состоят классы, структуры и модули. 733 27.1.5. Из чего состоят процедуры, функции, свойства и конструкторы. 734 27.1.6. Синтаксические схемы элементов VB. 735 27.2. Обычные и ссылочные типы.. 737 27.2.1. Механизм действия ссылочных типов. 738 27.2.2. Nothing. 740 27.2.3. Перечень обычных и ссылочных типов. 741 27.2.4. Передача ссылочных параметров по значению. 742 27.2.5. Бесконечность форм. 743 27.2.6. Многодокументный интерфейс (MDI) 744 27.3. Потоки и DoEvents. 747 27.3.1. DoEvents. 748 27.3.2. Потоки. 749 27.4. Миг между прошлым и будущим. 751 Приложения. 755 Приложение 1. Теория – о компьютере и программе. 756 Основные понятия. 756 Языки программирования и компиляция. 756 Программа для компьютера на машинном языке. 757 Языки программирования. 758 Компиляция. 760 Устройство и работа компьютера. 760 Схема компьютера. 760 Процессор. 761 Взаимодействие устройств компьютера. Работа процессора. 762 Взаимодействие устройств компьютера. Работа оперативной памяти. 763 Устройство оперативной памяти. 763 Взаимодействие программ. 764 Различные устройства компьютера. 765 Устройства ввода. 765 Устройства вывода. 766 Жесткий диск. 768 Съемные носители информации. 769 Связь компьютеров между собой. Сети, модем, сетевая карта. 770 Представление и кодирование информации в компьютере. 771 Приложение 2. Практика работы на компьютере. Ввод текста. 774 Работа в Windows. 774 Правильное включение и выключение компьютера. Первые шаги. 774 Работа с окнами Windows. 775 Файлы и папки. 777 Общие понятия. 777 Имена файлов и папок. 778 Проводник. 778 Действия над файлами и папками. 779 Логические диски. Адрес файла (путь, дорожка к файлу) 782 Ввод текста в текстовом редакторе Visual Studio .NET. 782 Работа с одной строкой текста. 783 Работа с несколькими строками. 785 Копирование перемещение, удаление фрагментов текста. 787 Волшебные кнопки отмены и возврата. 788 Список литературы... 789 Алфавитный указатель.. 790 Введение Visual Basic .NET– это новый мощный язык программирования, созданный корпорацией Microsoft в начале тысячелетия. Сохранив во многом внешнюю простоту своего предшественника – языка Visual Basic 6.0 – он радикально обогатил и усложнил свое внутреннее содержание, предоставив программисту огромное количество новеньких, с иголочки, инструментов. Самый главный из них – настоящее, полноценное объектно-ориентированное программирование. Visual Basic .NET конечно же по-прежнему чрезвычайно силен во всех областях традиционного программирования для обычных настольных компьютеров, то есть там, где был силен и Visual Basic 6.0. Но, откликаясь на веление времени, он приобрел и новую направленность – программирование в сетях. Теперь он позволяет удобно и легко писать программы для локальных сетей и Интернета, для карманных компьютеров и даже для мобильных телефонов. Visual Basic .NET – это производительное и надежное оружие в руках профессионального программиста. К тому же очень удобное и, несмотря на мощь, достаточно простое. Поэтому Visual Basic .NET более других профессиональных языков подходит для освоения начинающими программистами. На написание программы уходит минимум времени. Изучив эту книгу, вы сможете быстро писать такие, например, приложения, как собственные калькулятор или проигрыватель MP3-файлов, шифровщик секретных сообщений или будильник, веб-браузер или простенькая игра…. Приложив же достаточные усилия, вы сможете создавать вполне солидные продукты, такие, например, как система управления базами данных, графический редактор или сложная, красивая игра, которую не стыдно опубликовать в Интернете. В дальнейшем для краткости я часто буду обозначать Visual Basic .NET как VB. Иногда, впрочем, я буду писать Visual Basic или даже простоБейсик. Кому предназначена эта книга? Книга рассчитана на две категории читателей: · На начинающих программистов, в том числе даже на тех читателей, которые в своей жизни не запрограммировали ни строчки и просто хотят научиться программировать. Мало того – в конце книги вы найдете два Приложения, которые подготовят к восприятию книги даже тех, кто вообще никогда не садился за компьютер. · На программистов со средним опытом программирования, которые хотят освоить настоящий объектно-ориентированный язык и узнать, что такое объектно-ориентированное программирование. Они получат то, чего хотели – почувствуют, что значит объекты «на кончиках пальцев». Но им может показаться, что я слишком «разжевываю» материал. Что ж, каюсь: я всегда придерживался того мнения, что лучше «переобъяснить», чем «недообъяснить».
Это самоучитель. Книга написана с расчетом на то, что, изучив ее без посторонней помощи, вы сможете без посторонней помощи составлять программы на VB и выполнять их на компьютере тоже без посторонней помощи. Выражаясь рекламным языком: «Все, что вам нужно знать заранее, это где находится кнопка включения компьютера!». Все остальное в книге объяснено, включая инструкцию по установке VB на ваш компьютер, по работе в Windows и по вводу программного текста в компьютер. Автор приложил специальные усилия для того, чтобы изложение было понятным. Везде, где можно, я старался объяснить не только то, что делает компьютер, но и почему он это делает. Все объясняется на примерах. Рассмотрение почти каждой темы заканчивается задачами на составление программы (всего таких задач – 146).
Книга полна, то есть, несмотря на то, что она ориентирована на начинающих программистов, она полностью содержит традиционный материал, излагаемый в учебниках по VB такого же объема. В этом вы можете убедиться, заглянув в оглавление. После освоения читателем простых учебных программ книга идет дальше и на примере создания реальных проектов объясняет методику написания сложных, солидных программ, дающих читателю ощущение мощи и уверенности в своих силах. Примеры и задачи При создании книги очень важно было решить – какие выбрать примеры, на основе которых строить изложение материала. Здесь действует суровое правило: плохие примеры – плохая книжка, хорошие примеры – хорошая книжка, скучные примеры – скучная книжка, интересные примеры – интересная книжка. Все примеры, разобранные в этой книжке, дают солидные, прочные знания, годные и для школьника, и для студента. Но примерно одну треть из этих примеров я постарался сделать занимательными. Вот некоторые из них: Примеры задач на программирование, решенные в книге: · Игра «Автогонки», где вы управляете простеньким автомобилем · Игра «Ловец», где вы должны ловить множество движущихся шариков · Игра «Угадай число» · Задача: Как поставить пароль на свою программу, чтобы никто, кроме вас, не мог ее запустить · Задача: Как запрограммировать сохранение в играх · Задача: Как в Интернете зайти в чужой компьютер (предварительно постучавшись) · Задача: Как в Интернете поместить на свою страничку игру · Собственный калькулятор (при желании – с вашей фотографией, музыкой, прыгающими кнопками и прочими шутками) · Собственный будильник-секундомер · Собственный плеер для воспроизведения музыки и видео. · Собственный мультфильм · Собственный графический редактор · Рисование разнообразных рисунков и узоров (круги на воде, звездное небо, мыльные пузыри, компакт-диск, башня, ковер и тому подобное) · Размещение в приложениях Windows меню, кнопок и других элементов управления · Зашифровка и расшифровка секретных файлов (объяснена простейшая шифровка и расшифровка) · «Осмысленный» диалог с компьютером · Определитель быстроты реакции вашей и ваших друзей · Программа, определяющая, «экстрасенс ли вы»
Примеры задач, предлагаемых для самостоятельного решения: · Изготовление собственного компакт-диска с любимыми песнями · Игра-стрелялка «Торпедная атака» · Игра в крестики-нолики на бесконечном поле (пять в линию) · Игра в морской бой · Игра «Танковый бой» на неподвижном поле (вид сверху), где одновременно движутся и стреляют маленькие фигурки ваших и вражеских танков
Если вы энтузиаст программирования игр, то я должен вам сказать о том, какие игры будет НЕ под силу создавать начинающему программисту после изучения только моей книги. Прежде всего это трехмерные (3D) игры типа Quake или Unreal. Учтите, что эти игры создают не новички, а профессиональные программисты, и не в одиночку, а целыми фирмами. И используют они для этого специальные программные средства (например, библиотеку Direct X), разобраться в которых можно, только съев пуд соли в геометрии и программировании. Изучение конкретного языка программирования – это всего лишь первая ступенька в деле создания таких солидных продуктов, как качественная 3D-игра. Так что, если ваш приятель за неделю освоил редактирование сценариев игры Heroes III и теперь важно заявляет, что он программирует, вы можете, тихо улыбаясь, сказать ему, что он немножко ошибается. А вот какие игры вы сможете создавать: Мрачная городская улица. Появляется автомобиль. Он стремительно приближается к главному герою, спрятавшемуся с бластером в руках за рекламной тумбой. Из автомобиля доносятся выстрелы. Пули щелкают по тумбе. В последний момент – визг тормозов и машина застывает. Теперь не медли – бей по клавишам клавиатуры, стреляй, пока крестные отцы наркомафии до тебя не добрались! Автомобиль вспыхивает, из него выскакивают «братки» и, спасаясь от твоих выстрелов, бросаются в ближайшие укрытия, откуда открывают ожесточенный огонь. Схватка продолжается… А вот что вы сможете реально сделать в описанной игре: На экране – картинка города, сколь угодно красивая, нарисованная вами самостоятельно или где-нибудь добытая. Вы можете, кстати, следуя за сюжетом игры, менять картинки улиц, кварталов, помещений, в нужные моменты помещая на экран нужную картинку. По городу движутся автомобили, прохожие, летят пули, вспыхивают лазерные лучи. Вы сможете создать голоса персонажей, звуки выстрелов и прочее. Однако движения персонажей будут не такими реалистичными, как в 3D-играх. Вам легко будет сделать, чтобы фигуры персонажей в застывшей позе двигались в любых нужных вам направлениях и даже при этом уменьшались в размерах (удаляясь в перспективе) или увеличивались (приближаясь). Немного труднее будет заставить их при этом передвигать ногами. Больше времени уйдет, чтобы запрограммировать более сложные движения, такие как повернуться боком, пригнуться, лечь, зарядить винтовку, улыбнуться, залезть в карман и тому подобное. Если герою вздумается долго идти направо, то вы сможете заставить город услужливо прокручиваться налево, как это происходит в играх-аркадах. Если вы думаете, что начав изучать программирование не с VB, а с Delphi или C++, вы быстрее и легче придете к программированию более сложных игр и других задач, то глубоко ошибаетесь. Если бы вы обратились за советом, с чего начать, к профессиональному программисту, который всю жизнь писал игры и другие программы на C++, то в ответ почти наверняка услышали бы: «Начни с Бейсика, дружок!»
Популярное: Организация как механизм и форма жизни коллектива: Организация не сможет достичь поставленных целей без соответствующей внутренней... Почему стероиды повышают давление?: Основных причин три... Как вы ведете себя при стрессе?: Вы можете самостоятельно управлять стрессом! Каждый из нас имеет право и возможность уменьшить его воздействие на нас... ©2015-2024 megaobuchalka.ru Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. (640)
|
Почему 1285321 студент выбрали МегаОбучалку... Система поиска информации Мобильная версия сайта Удобная навигация Нет шокирующей рекламы |