IfRichEdit1.Modified then

CaseApplication.MessageBox('Сохранить данные?','Выберите операцию',MB_YESNOCANCEL) of

IDYES : {действия по сохранению данных};

IDNO : Action:=caHide; {отказ от сохранения данных}

IDCANCEL : Action:=caNone; {отмена закрытия формы}

end;

end;

 

Перед закрытием формы программист опрашивает свойство Modified расширенного редактора RichEdit1 (потомка класса TCustomEdit). Если текст компонента был модифицирован, пользователь получает уведомление об этом с одновременным предложением сохранить данные. У потомков TCustomEdit предусмотрена возможность отмены последних изменений в редактируемом тексте. Если содержимое свойства Text изменялось и элемент управления помнит его предыдущее значение, то в true устанавливается свойство:

 

propertyCanUndo: Boolean; // только для чтения

 

В таком случае откат обеспечит метод:

procedureUndo;

 

Полную очистку текста осуществляет метод:

procedureClear; virtual;

 

Текстовые файлы DOS и Windows используют различную кодировку символов (соответственно OEM и ANSI или Unicode). Работая в Win32, при выводе на экран файла в кодировке, принятой в MS-DOS, мы получим текст в нечитаемом представлении. Чтобы избежать подобной проблемы, используйте свойство:

 

propertyOEMConvert: Boolean;

При изменении кодировки символов не забывайте о наличии у класса шрифтов (TFont) свойства CharSet, определяющего номер набора символов шрифта. Для вывода кириллицы используйте RUSSIAN_CHARSET.

При каждом изменении текста вызывается обработчик события:

propertyOnChange: TNotifyEvent;

 

Автоматическую подстройку вертикального размера элемента управления под высоту используемого шрифта осуществляет свойство:

propertyAutoSize: Boolean;

Строка ввода – класс TEdit

 

Класс TEdit инкапсулирует стандартный элемент управления Windows.

Компонент почти на 100% состоит из свойств и методов, ранее опубликован-

ных у его предка TCustomEdit. Единственное, на чем следует еще раз заострить внимание, – событие OnChange(). Ключевое событие строки ввода очень часто используется с целью организации взаимодействия текстового элемента с другими элементами управления или с функциями Windows API.

procedureTForm1.Edit1Change(Sender: TObject);

Begin

Button1.Enabled:=(Edit1.text<>’’);

end;

 

Листинг демонстрирует способ включения и отключения кнопки при изменении содержимого строки ввода. Этот пример может пригодиться при разработке диалоговых окон, требующих обязательного ввода какой-то информации, например пароля. И пока строка ввода пуста, кнопка OK диалогового окна остается недоступной.

Не используйте событие строки ввода OnChange() для изменения собственного свойства Text. В этом случае высока вероятность зацикливания процедуры обработки события.








Дата добавления: 2016-03-15; просмотров: 544;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

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

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.004 сек.