- •Содержание
- •17.2.2. Свойства 130
- •17.6.2. Свойства 133
- •17.7.2. Свойства 134
- •18. Меню 139
- •Основные понятия ооп
- •Объекты
- •Классы объектов
- •Свойства
- •События
- •Три основных принципа ооп
- •Инкапсуляция
- •Наследование
- •Полиморфизм (имеющий много форм)
- •Визуальное проектирование интерфейса
- •Событийно-управляемое программирование
- •Процесс создания приложений
- •Интегрированная среда разработки (иср) visual basic
- •Общая организация программы в vb
- •Структура проекта vb
- •Структура событийной процедуры
- •Общее описание среды vb
- •Краткая характеристика элементов управления, используемых при создании простых приложений
- •Основные свойства, методы и события объектов vb
- •Основные элементы языка Vb
- •Типы данных
- •Переменные
- •Объявление переменных
- •Explicit-объявление
- •Константы
- •Выражения и операции
- •Стандартные подпрограммы
- •Математические функции vb
- •Функции преобразования данных vb
- •Операторы
- •Простые операторы
- •Оператор присваивания
- •Операторы вызова процедур
- •Оператор безусловного перехода
- •Системные диалоговые окна
- •Диалоговое окно ввода информации InputBox
- •InputBox(Приглашение,Заголовок,НачЗначение),
- •Окно сообщения MsgBox
- •Ввод и вывод данных в vb
- •Ввод данных
- •Вывод результатов
- •Функция Format
- •Структурные операторы
- •Условные операторы
- •Оператор выбора Select … Case
- •Операторы повтора
- •Циклы с параметром
- •Элемент управления Slider
- •Циклы с условием
- •Использование рекуррентной формулы для вычисления суммы ряда
- •Использование функции Timer
- •Подпрограммы пользователя
- •Пользовательские процедуры
- •Способ передачи аргументов
- •Функции пользователя
- •Массивы
- •Оператор Option Base
- •Динамические массивы
- •Функции lBound и uBound
- •Функция Rnd
- •Оператор Erase
- •Типовые задачи на обработку одномерных массивов
- •Формирование массива с помощью функции Split
- •Линейная сортировка массива
- •Уплотнение массива
- •Вставка элемента в массив
- •Изменение положения элементов на некотором отрезке
- •Кольцевой сдвиг элементов массива
- •Двумерные массивы
- •Ввод и вывод двумерных массивов
- •Формирование двумерного массива с помощью диалогового окна InputBox и функции Split
- •Вывод двумерного массива с помощью элемента управления msFlexGrid
- •Типовые задачи на обработку двумерных массивов
- •Преобразование двумерных массивов
- •Типовые задачи с квадратными матрицами
- •Массивы в качестве формальных параметров в процедурах и функциях пользователя
- •Данные строкового типа
- •Операции над строками
- •Функции, предназначенные для работы со строками
- •Функция Split
- •Функция Join
- •Оператор Mid
- •Типовые задачи на обработку строк
- •Анализ символьных строк
- •Изменение строк (замена, удаление, вставка символов)
- •Функции и операторы для работы с файлами
- •Открытие файлов
- •Закрытие файлов
- •Работа с файлами последовательного доступа
- •Чтение данных
- •Запись данных
- •Элемент управления CommonDialog
- •Графика в vb
- •Методы графики в vb
- •Задание цвета
- •Свойства объектов, влияющих на графические методы:
- •Применение метода Scale
- •Построение графика функции
- •Некоторые дополнительные элементы управления, которые часто используются в проектах.
- •Объект управления Shape (Фигура)
- •Свойства
- •Объект управления Timer
- •События
- •Свойства
- •Окна общего диалога
- •Создание меню
- •Свойства
- •Работа с несколькими формами
-
Изменение строк (замена, удаление, вставка символов)
Пример 3. Получить новую строку S1 из введенной строки S, заменив строчные русские буквы на прописные.
Фрагмент программного кода:
For i = 1 To Len(S) 'Цикл по всем символам заданной строки
a = Mid(S, i, 1)
Select Case a
'Преобразование встреченной в заданной строке строчной русской буквы
'в прописную русскую букву и добавление ее в новую строку. Прописная русская буква
'в таблице ASCII имеет код меньший, чем соответствующая ей строчная, на 32.
Case "а" To "я"
S1 = S1 + Chr(Asc(a) - 32)
Case Else
S1 = S1 + a 'Добавление символа строки s в строку s1 без преобразования
End Select
Next i
Пример 4. Получить новую строку S1 из введенной строки S такую, чтобы между словами был только один пробел. Вывести сообщение о количестве удаленных пробелов.
Фрагмент кода программы:
Private Sub Command1_Click()
S = Text1.Text
S = Trim(S) 'Удаление пробелов вначале и в конце заданной строки
S1 = ""
For i = 1 To Len(S) - 1 'Цикл для поиска пробелов
If Mid(S, i, 1) <> " " Then
S1 = S1 + Mid(S, i, 1) 'Переписывание символов,
отличных от проделов в строку s1
Else
'Запись в строку s1 одного пробела, если следующий за ним символ не пробел
If Mid(S, i + 1, 1) <> " " Then S1 = S1 + " "
End If
Next i
S1 = S1 + Mid(S, Len(S), 1) 'Переписывание последнего символа
k = Len(S) - Len(S1) 'Подсчет количества удаленных пробелов
Text2.Text = S1
Text3.Text = Str(k)
End Sub
Пример 5. В заданной строке S заменить все слова «всегда» на «часто».
Фрагмент кода программы:
Private Sub Command1_Click()
s=Text1.Text
s=Replace(s, "Всегда", "Часто", 1)
s=Replace(s, "всегда", "часто", 1)
Text2.Text=s
End Sub
Пример 6. Преобразовать заданную строку S в массив слов и вывести его в поле Text.
Фрагмент кода программы:
Private Sub Command1_Click()
Dim i, k As Byte
Dim s As String
Dim m(1 To 127) As String 'Описание массива для хранения слов
s – заданная строка
s = Text1.Text
Text2.Text = ""
k = 1 'Задание начального номера элемента массива
For i = 1 To Len(s) 'Цикл для поиска пробелов
If (Mid(s, i, 1) <> " ") And (Mid(s, i, 1) <> ".") And
(Mid(s, i, 1) <> "!") And (Mid(s, i, 1) <> "?") Then
m(k) = m(k) + Mid(s, i, 1)'Формирование очередного элемента массива
Else
k = k + 1 'Увеличение номера элемента массива
End If
Next i
For i = 1 To k
Text2.Text = Text2.Text + m(i) + Chr(13) + Chr(10)
Next i
End Sub
-
Файлы
В зависимости от организационной структуры хранения информации в файле и способа доступа к этой информации принято выделять три типа файлов:
-
Файлы последовательного доступа. Как правило, это текстовые файлы. Структурной единицей таких файлов является строка. Данные в них хранятся в виде цепочки ASCII кодов и могут обрабатываться любым текстовым редактором. Запись и считывание данных при работе с такими файлами происходит строго последовательно (нельзя получить доступ ко второй записи, не прочитав первой).
-
Файлы произвольного доступа. Это структурированные файлы, которые содержат информацию в виде записей. Например, файлы баз данных. Компоненты (поля) в записях таких файлов могут иметь разные типы. Но все записи файлов последовательного доступа имеют постоянную длину и порядковый номер. Это позволяет получить доступ сразу к нужной записи без последовательного просмотра всех предыдущих.
-
Бинарные (двоичные) файлы. Это могут быть файлы последовательного доступа, но информация в них представлена в виде байтов или блоков байтов. К таким файлам можно отнести файлы с расширением exe, т.е. программные. Это могут быть файлы произвольного доступа: размер записи у них всегда равен 1 байту, и любой байт можно считать по его порядковому номеру.