Программирование - это просто
Advertisement
Главная arrow Уроки программирования arrow Delphi - это просто! arrow Delphi. Урок 4.4. Множества в Delphi (программирование, компоненты Delphi)
25.04.2024 г.
Главное меню
Главная
Интернет магазин
Программные продукты
Биржевые роботы
Искусственный интеллект
Математика и информатика
1С:Предприятие
Уроки C#
Уроки Delphi
Уроки программирования
Web-программирование
Дизайн и графика
Компьютер для блондинок
Исходники
Статьи
Платный раздел
Рассказы про компьютеры
Хитрости и секреты
Системный подход
Размышления
Наука для чайников
Друзья сайта
Excel-это не сложно
Все о финансах
.
Delphi. Урок 4.4. Множества в Delphi (программирование, компоненты Delphi) Печать E-mail
Автор megabax   
24.06.2009 г.
Множества в Delphi (программирование компоненты книги изучение форум)

Множества в Delphi (программирование, компоненты Delphi)

 

В этой статье мы продолжим усовершенствовать на наш текстовый редактор. Посмотрим диалог поиска и замены. У нас там есть флажки «Только слово целиком» и «С учетом регистра»*.

 

Множества в Delphi (программирование, компоненты Delphi)

 

Если мы попытаемся попробовать их поставить, то выясним, что это не работает. И правильно, мы же еще не запрограммировали такие возможности. Давайте запрограммируем. Начнем с поиска слова целиком.

 Строку:

 

PosReturn := Pos(rdReplaceDialog.FindText,s);

 

Заменим на

 

    if frWholeWord in rdReplaceDialog.Options then

        PosReturn := Pos(' '+rdReplaceDialog.FindText+' ',s)

    else

        PosReturn := Pos(rdReplaceDialog.FindText,s);

 

а строку

 

moText.SelStart := SkipChars;

 

на строки

 

if frWholeWord in rdReplaceDialog.Options then

        moText.SelStart := SkipChars+1

else

        moText.SelStart := SkipChars;

 

 

Обратим внимание на frWholeWord in rdReplaceDialog.Options. Слово frWholeWord – это константа. Она обозначает опцию диалога поиска и замены, соответствующее флажку «Только слово целиком».  У компонента RelpaceDialog есть свойство Option, которое показывает, какие опции включены в диалоге. Оно имеет тип «Множество» (set).  С этим типом мы уже сталкивались на первом уроке, когда писали свою первую программу

 

messageDlg('Ура. Я написал свою первую программу!',mtInformation,[mbOk],0);

 

Здесь множество задано в виде выражения, ограниченного квадратными скобками. ([mbOk]). Оно содержит всего один элемент. На самом деле их может быть сколько угодно, и когда надо записать множество через квадратные скобки, все эти элементы просто перечисляются через запятую.

Для того, что бы вы лучше усвоили понятия свойства, расскажу небольшую сказку:

Жил был один шут гороховый. Было у него несколько мешков, в которых он хранил разноцветные шары. У него всегда можно было спросить, а есть ли в твоем мешке вот такой шар? Но при этом нужно было показать сам шарик, сказать кодовое слово IN, а потом указать на мешок, в котором хотим проверить наличие показанного шарика. И только тогда шут гороховый отвечал. Иначе он просто говорил что то непонятное по английский.

В мешки шута горохового можно было положить еще шарики. А можно и взять оттуда шарик. Но так просто шут не отдавал шарики. Ему сперва требовалось указать на мешок, откуда хотим взять шарик, сказать «минус», а потом показать тот шарик, который хотим забрать. Если там такого шарика нет, то ничего не происходит, а если есть, то он исчезает из мешка. 

И так, в этой сказке вы познакомились с понятием множество. В него можно добавить элемент (знаком +), убрать (знаком минус) и проверить, есть ли в нем данный элемент (командой IN).

Про вторую галочку «С учетом регистра» поговорим в следующей статье. а на последок я скажу вот еще что. Сейчас наша программа некорректно ищет слово целиком. Она не «понимает» ситуацию, когда слово стоит вначале и в конце строки. Еще программ не найдет слово, после которой стоит запятая или точка. Пока оставим как есть, сейчас наша цель изучить компоненты Delphi и мало мальски ознакомится с языком Object Pascal.  Но к этому вопросу мы еще вернемся, когда будем проходить парсинг – анализ текстов.

 

 


Скриншоты, помеченные знаком * , являются цитатами и иллюстрациями   программного продукта "Delphi", авторское право на который принадлежит "Borland Software Corporation".


 

 

Последнее обновление ( 30.06.2012 г. )
 
« След.   Пред. »
 
© 2024 Программирование - это просто
Joomla! - свободное программное обеспечение, распространяемое по лицензии GNU/GPL.
Русская локализация © 2005-2008 Joom.Ru - Русский Дом Joomla!
Design by Mamboteam.com | Powered by Mambobanner.de
Я принимаю Яндекс.Деньги