КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Ввод данных с клавиатуры
Запись данных в оперативную память Запись данных в оперативную память является одной из самых распространенных при составлении программ. Она встречается при установке свойств объектов в ходе работы программы и при записи данных по адресам, определенным пользователем. Эти операции осуществляются оператором присваивания. Учитывая, что данные записываются в свойства объектов, а также в качестве значений переменных, констант и элементов массива, можно предложить несколько форм оператора присваивания (табл. 4.3). Таблица 4.3 Форматы оператора присваивания
Из табл. 4.3 видно, что в любом случае оператор присваивания состоит из правой и левой частей, разделенных символом "=". В левой части стоит символьный эквивалент адреса (т.е.) имя данного, в правой части – конкретное значение данного или вычисляемое выражение подходящего типа. Важнейшей операцией, с которой приходится встречаться программисту, является ввод данных с клавиатуры. Для этой цели в среде Visual Basic существуют объекты Text Box, Flex Grid и InputBox. Наиболее просто организовать ввод данных с клавиатуры посредством объекта Text Box (табл. 4.4). Таблица 4.4 Организация ввода данных посредством объекта Text Box
В свойство MultyLine при проектировании окна ввода данных средой автоматически записывается значение False, запрещающее многострочность. Для создания многострочного окна в свойство MultyLine нужно записать значение True. Свойства ScrollBars имеет четыре значения: · 0 – нет полос прокрутки, · 1 – есть горизонтальная полоса, · 2 – есть вертикальная полоса, · 3 – есть обе полосы.
При вводе множества данных, которые можно оформить в виде таблицы, прекрасные результаты можно получить, используя объект Flex Grid. При решении этой задачи приходится решать три проблемы: управление внешним видом таблицы, ввод данных в ячейки и защиту данных в некоторых ячейках таблицы, например, в крайнем правом столбце или в нижней строке. Существует два варианта организации ввода данных в таблицу: через вспомогательное окно Text Box и прямой ввод данных в ячейки таблицы Таблица 4.5 Организация ввода данных через объект FlexGrid
Прямой ввод данных в клетку таблицы осуществлен в обработчике события KeyPress. Переменные i,j,s,s1 введены для придания тексту кода программы более компактного вида. Код введенного символа попадает через буфер клавиатуры в переменную KeyAscii. Далее этот код определяет букву, записываемую в переменную s1. Затем к содержимому активной ячейки приписывается буква, полученная из буфера клавиатуры. Недостатком приведенного фрагмента является неспособность обработать нажатие клавишей Enter, BackSpace и Del часто использующихся для редактирования данных. Усовершенствованный вариант кода приведен на рис. 4.3. Изменения выделены жирным шрифтом.
Private Sub MSFG1_KeyPress(KeyAscii As Integer) Dim i As Integer: Dim j As Integer Dim s As String: Dim s1 As String * 1 i = MSFG1.Row: j = MSFG1.Col s = MSFG1.TextMatrix(i, j) s1 = Chr(KeyAscii): if s1=chr(13) then 'вставить операторы, обрабатывающие нажатие Enter elseif s1=chr(8) then 'оператор, обрабатывающий нажатие BackSpace 'выполняет усечение строки s справа на 1 символ s = left(s, len(s)-1)
Дата добавления: 2014-11-29; Просмотров: 638; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |