Студопедия

КАТЕГОРИИ:


Архитектура-(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)

Функция InputBox




Таблица строк — компонент StringGrid

 

Компонент StringGrid представляет собой таблицу, содержащую строки. Данные таблицы могут быть только для чтения или редактируемыми. Таблица может иметь полосы прокрутки, причем заданное число первых строк и столбцов может быть фиксированным и не прокручиваться. Таким образом, можно задать заголовки столбцов и строк, постоянно присутствующие в окне компонента. Каждой ячейке таблицы может быть поставлен в соответствие некоторый объект.

Компонент StringGrid предназначен в первую очередь для отображения таблиц текстовой информации. Однако этот компонент может отображать и графическую информацию.

 

Таблица 16.5 - Основные свойства компонента

Cells[ACol, ARow: Integer]: string Строка, содержащаяся в ячейке с индексами столбца и строки ACol и ARow.
Cols[Index: Integer]: TStrings Список строк, содержащихся в столбце с индексом Index.
Rows[Index: Integer]: TStrings Список строк, содержащихся в строке с индексом Index.
Objects [ACol, ARow: Integer]: TObject; Объект, связанный со строкой, содержащейся в ячейке с индексами столбца и строки ACol и ARow.

 

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

Свойства ColCount и RowCount определяют соответственно число столбцов и строк, свойства FixedCols и FixedRows — число фиксированных, не прокручиваемых столбцов и строк. Цвет фона фиксированных ячеек определяется свойством FixedColor. Свойства LeftCol и TopRow определяют соответственно индексы первого видимого на экране в данный момент прокручиваемого столбца и первой видимой прокручиваемой строки.

Свойство ScrollBars определяет наличие в таблице полос прокрутки. Причем полосы прокрутки появляются и исчезают автоматически в зависимости от того, помещается таблица в соответствующий размер, или нет.

Свойство Options является множеством, определяющим многие свойства таблицы: наличие разделительных вертикальных и горизонтальных линий в фиксированных (goFixedVertLine и goFixedHorzLine) и не фиксированных (goVertLine и goHorzLine) ячейках, возможность для пользователя изменять с помощью мыши размеры столбцов и строк (goColSizing и goRowSizing), перемещать столбцы и строки (goColMoving и goRowMoving) и многое другое. Важным элементом в свойстве Options является goEditing — возможность редактировать содержимое таблицы.

В основном компонент StringGrid используется для выбора пользователем каких-то значений, отображенных в ячейках. Свойства Col и Row показывают индексы столбца и колонки выделенной ячейки. Возможно также выделение пользователем множества ячеек, строк и столбцов.

Среди множества событий компонента StringGrid следует отметить событие OnSelectСell, возникающее в момент выбора пользователем ячейки. В обработчик этого события передаются целые параметры ACol и ARow — столбец и строка выделенной ячейки, и булев параметр CanSelect — допустимость выбора. Параметр CanSelect можно использовать для запрета выделения ячейки, задав его значение false. А параметры ACol и ARow могут использоваться для какой-то реакции программы на выделение пользователя. Например, оператор

 

Label1.Caption:='Выбрана ячейка '

+IntToStr(ARow)+':'+IntToStr(ACol);

 

выдаст в метку Label1 номер выбранной ячейки. А оператор

 

Label1.Caption:=StringGrid1.Cells [ACol, ARow];

 

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

 

Окно ввода — это стандартное диалоговое окно, которое появляется на экране в результате вызова функции InputBox. Значение функции InputBox — строка, которую ввел пользователь.

В общем виде инструкция ввода данных с использованием функции InputBox выглядит так:

Переменная:= InputBox(Заголовок, Подсказка, Значение);

где:

Переменная — переменная строкового типа, значение которой должно быть получено от пользователя;

Заголовок — текст заголовка окна ввода; П подсказка — текст поясняющего сообщения;

Значение — текст, который будет находиться в поле ввода, когда окно ввода появится на экране.

Ниже в качестве примера приведена инструкция, используя которую можно получить исходные данные для программы пересчета веса из фунтов в килограммы. Окно ввода, соответствующее этой инструкции, приведено на Рисунок 16.2.

 

s:= InputBox ('Фунты-килограммы','Введите вес в фунтах','0');

 

Рисунок 15.2 - Пример окна ввода

 

Если во время работы программы пользователь введет строку и щелкнет на кнопке ОК, то значением функции InputBox будет введенная строка. Если будет сделан щелчок на кнопке Cancel, то значением функции будет строка, переданная функции в качестве параметра значение.

Следует еще раз обратить внимание на то, что значение функции InputBox строкового (string) типа. Поэтому если программе надо получить число, то введенная строка должна быть преобразована в число при помощи соответствующей функции преобразования. Например, фрагмент программы пересчета веса из фунтов в килограммы, обеспечивающий ввод исходных данных из окна ввода, может выглядеть так:

s:= InputBox('Фунты-килограммы1,'Введите вес в фунтах',''); funt:= StrToFloat(s);

Ввод данных из поля редактирования осуществляется обращением к свойству Text.

 

Рисунок 15.3 - Компонент Edit1 используется для ввода данных

 

На Рисунок 16.3 - Компонент Edit1 используется для ввода данных приведен вид диалогового окна программы пересчета веса из фунтов в килограммы. Компонент Editl используется для ввода исходных данных. Инструкция ввода данных в этом случае будет иметь вид:

 

Funt:= StrToFloat(Editl.Text);

 

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

 




Поделиться с друзьями:


Дата добавления: 2014-01-06; Просмотров: 409; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.016 сек.