Элемент управления Edit Box используется для редактирования данных символьного типа из длинных символьных полей или memo-полей. В поле редактирования слова автоматически перносятся, возможно перемещение по тексту с использованием клавиш перемещения курсора -стрелок, Page Up и Page Down, а также полос прокрутки.
Чтобы посмотреть примеры использования элемента управления Edit Box, выполните приложение Solution.app из каталога Visual FoxPro ...\Samples\Solution. В древовидной структуре выберите Controls, затем нажмите Edit boxes.
Предоставление
пользователю возможности редактирования содержимого Memo-поля в элеметне
управления Edit Box
Все, что нужно сделать, чтобы предоставить пользователю такую
возможность - это указать нужное memo-поле в свойстве
ControlSource. Например, имеется некоторое memo-поле comments
в таблице log. Задайте log.comments в свойстве
ControlSource элемента управления Edit Box и пользователь сможет
редактировать содержимое этого memo-поля в поле редактирования.
Предоставление
пользователю возможности редактирования содержимого текстового файла в
элеметне управления Edit Box
Вы также можете предоставить пользователю возможность редактирования текстового файла в поле редактирования. Следующая форма иллюстрирует такую возможность.
Кнопка OK закрывает форму. Её код обработки события Click содержит:
Скопировать
код | |
|---|---|
RELEASE THISFORM | |
Две другие кнопки в этом примере cmdOpenFile и
cmdSave служат соответственно для открытия файла и его сохранения
после редактирования.
| Клд | Комментарии |
|---|---|
|
|
Создается курсор с текстовым полем для хранения имени текстового файла и memo-полем для хранения содержимого этого файла. В курсор добавляется пустая запись. |
|
|
Функция GETFILE( ) используется для получения имени текстового файла, который нужно открыть. Имя файла помещается в поле FileName созданного ранее курсора. |
|
|
Если пользователь в диалоговом окне, вызываемом функцией GETFILE(), нажал кнопку отмены Cancel, поле FileName останется пустым, файл не выбран. |
|
|
Текст, содержащийся в текстовом файле помещается в memo-поле. |
|
|
Устанавливается свойство ControlSource элемента управления Edit Box. |
|
|
Кнопка Save доступна. |
После того, как файл был открыт и его содержимое отредактировано, измененный текст может быть сохранен в исходном файле с помощью кнопки Save.
| Код | Комментарии |
|---|---|
|
|
Содержимое файла перезаписывается данными из memo-поля. |
Манипуляции
с выделенным текстом в элементе управления Edit Box
Элементы управления Edit Box и Text Box имеют три свойства, позволяющие работать с выделенным текстом: SelLength, SelStart и SelText.
С использованием свойств SelStart и SelLength некоторый текст может быть выделен программно. Например, следующий код выделяет первое слово в поле редактирования:
Скопировать
код | |
|---|---|
Form1.edtText.SelStart = 0
Form1.edtText.SelLength = AT(" ", Form1.edtText.Text) - 1 | |
Совет |
|---|
|
Когда Вы изменяете свойство SelStart, поле редактирования
прокручивается, чтобы отобразить текст в соответствии с новым значением
свойства SelStart. Если SelStart изменяется в цикле, например, при
поиске фрагмента текста, Ваш код будет выполняться быстрее, если
установить перед обработкой |
К выделенному в поле редактирования тексту можно обратиться с помощью свойства SelText. Например, следующая строка кода переводит все символы выделенного текста в верхний регистр:
Скопировать
код | |
|---|---|
Form1.edtText.SelText = UPPER(Form1.edtText.SelText) | |
Общие
свойства элемента управления Edit Box
Следующие свойства элемента управления Edit Box обычно устанавливаются на этапе разработки.
| Свойство | Описание |
|---|---|
|
Определяет, может ли пользователь с помощью клавиши TAB вставлять позиции табуляции в поле редактирования, а не перемещаться на следующий элемент управления. Если табуляторы разрешены, убедитесь, что для перемещения на следующий элемент управления можно использовать сочетание клавиш CTRL+TAB. |
|
|
Определяет, остается ли текст выделенным, когда элемент управления теряет фокус. |
|
|
Определяет, может ли пользователь изменить текст в поле редактирования. |
|
|
Определяет наличие вертикальной полосы прокрутки. |
Смотрите
также
Справочное руководство
Элемент управления EditBoxЭлементы управления для ввода данных
Прочие ресурсы
Использование элементов управления
© Microsoft Corporation. All rights reserved.
Перевод выполнен SAM-FoxPro
Совет