WWW.KNIGI.KONFLIB.RU

БЕСПЛАТНАЯ ЭЛЕКТРОННАЯ БИБЛИОТЕКА

 
<< HOME
Научная библиотека
CONTACTS

Pages:     | 1 || 3 | 4 |   ...   | 85 |

«CVBuilder 6 СПРАВОЧНОЕ ПОСОБИЕ Книга 2 Классы и компоненты Москва ЗАО Издательство БИНОМ 2002 УДК 004.43 ББК 32.973.26-018.1 А87 Архангельский А.Я. C++Builder 6. ...»

-- [ Страница 2 ] --

SI = SI.Substring(l,i + iO - 1) + S3 + SI.Substring (1 + 10 + S2.Length(),255);

i = SI.Substring(10 + 1, 255).Pos(S2);

Приведенный код мало отличается от рассмотренного ранее и не содержит каких-то новых функций. Основные отличия заключаются в следующем. Во-первых, вводится переменная 10 — индекс, предшествующий первому символу еще не обработанной части строки S1. Значение 10 изменяется после обработки очередной части строки. Во-вторых, очередное вхождение строки S2 в S1 определяется не по всей строке S1, а только по ее еще не обработанной части: Sl.SubString(10 + 1, 255).

Рассмотренную задачу контекстного поиска и замены в строке можно было бы решить иначе, воспользовавшись функциями Delete и Insert класса AnsiString.

Функция Delete удаляет из строки, начиная с позиции, заданной первым параметром функции, число символов, заданное вторым параметром функции. Функция Insert вставляет в строку подстроку, заданную первым параметром функции, в позицию, заданную вторым параметром функции.

Применение этих функций позволяет выполнить контекстную замену с помощью, например, следующего кода:

SI.Delete(i,S2.Length О); // удаление вхождения В заключение отметим метод, позволяющий переходить от типа AnsiString к типу (char *). Несмотря на то, что применение AnsiString практически всегда удобнее (char *), такие переходы приходится делать при передаче параметров в некоторые функции, требующие тип параметра (char *). Чаще всего это связано с вызовом функций API Windows или функций C++Builder, инкапсулирующих такие функции. Преобразование строки AnsiString в строку (char *) осуществляется функцией c_str() без параметров, возвращающей строку с нулевым символом в конце, содержащую текст той строки AnsiString, к которой она применена. Например, если вы имеете строки S1 и S2 типа AnsiString, которые хотите передать в функцию Application—MessageBox в качестве сообщения и заголовка окна, то вызов Application—MessageBox может иметь вид:

Возможно и обратное преобразование строки (char *) в строку AnsiString. Для этого используется функция которая возвращает строку типа AnsiString, содержащую текст, записанной в строке S, являющейся аргументом функции.

Основные методы класса AnsiString (в описаниях методов через S1 обозначена строка, метод которой используется):

Метод AnsiCompare Сравнивает данную строку SI с rhs с учетом регистра. Сравнение зависит от текущих установок Windows и может отличаться от сравнения, осуществляемого операциями сравнения. Возвращает значение 0 при SI rhs, значение Метод int AnsiCompareIC(const AnsiString& rhs) const AnsiCompareIC Осуществляет сравнение, аналогичное AnsiCompare, но без AnsiLastChar Возвращает указатель на последний значащий символ. Поддерживает многобайтные символы int AnsiPos(const AnsiString& subStr) const AnsiPos Возвращает индекс первого символа первого вхождения subStr в S1. Индексы начинаются с 1. Если subStr не содержится в S1, возвращается 0. В отличие от Pos поддерживает AnsiString Конструктор класса. В зависимости от типа аргумента создает:

const char* src, unsigned char Строку с нулевым символом c_str char* c_str()const Возвращает указатель на строку с нулевым символом в конце, содержащую те же символы, что в AnsiString CurrToStr static AnsiString CurrToStr(Currency value) Преобразует значение value типа Currency в строку CurrToStrF static AnsiString CurrToStrF(Currency value, Преобразует значение value типа Currency в строку, используя указанный формат преобразования чисел с плавающей запятой (см. разд. «TStringFloatFormat — тип»). Параметр определяет задаваемое число разрядов. Функция соответствует функции CurrToStrF с заданной точностью 19 разрядов Метод Синтаксис / Описание Delete void Delete(int index, int count) Удаляет из строки, начиная с позиции index число символов, FloatToStrF static AnsiString FloatToStrF(long double value, Преобразует значение value с плавающей запятой в строку, используя указанный формат (см. разд. «TStringFloatFormat тип»). Параметры precision и digits задают точность и число разрядов. Точность должна задаваться не более 7 для типа float, не более 15 для double и не более 18 для Extended. Число Format static AnsiString Format(const AnsiString& format, Формирует строку, используя строку формата format и массив аргументов args FormatFloat static AnsiString FormatFloat(const AnsiString& format, Преобразует значение value с плавающей запятой в строку, Insert void Insert(const AnsiString& str, int index) Вставляет в строку подстроку str, начиная с индекса index IntToHex static AnsiString IntToHex(int value, int digits) Преобразует значение value в строку, содержащую минимум IsDelimiter bool Isl)elimiter( const AnsiString& delimiters, int index) const Возвращает true, если символ с индексом index является одним из разделителей, указанных в строке delimiters. Работает и для многобайтных символов IsEmpty bool IsEmptyO const int LastDelimiter(const AnsiString& delimiters) const LastDelimiter Возвращает последний из символов строки, входящих в строку разделителей delimiters. Например, если LowerCase AnsiString LowerCaseO const Возвращает строку, в которой все символы приведены к нижнему регистру. Не влияет на исходную строку Метод int Pos(const AnsiString& subStr) const Pos Возвращает индекс первого символа первого вхождения subStr в S1. Индексы начинаются с 1. Если subStr не содержится в S1, возвращается 0. В отличие от AnsiPos не поддерживает многобайтные символы SetLength Усекает строку до newLength символов. Если исходная строка короче, то она не увеличивается static AnsiString StringOfChar(char ch, int count) StringOfChar Возвращает строку, в которой символ ch повторен count раз.

AnsiString SubStrine(int index, int count) const Substring Возвращает подстроку, начинающуюся с символа в позиции ToDouble Преобразует строку в число с плавающей запятой. Если строка не соответствует формату числа с плавающей запятой, генерируется исключение EConvertError Tolnt Преобразует строку в целое число. Если строка не соответствует формату целого числа, генерируется исключение EConvertError int ToIntDef(int defaultValue) const ToIntDef Преобразует строку в целое число. Если строка не соответствует формату целого числа, возвращается значение по умолчанию defaultValue Trim Возвращает строку, соответствующую исходной, но без пробельных символов до и после значащих символов TrimLeft Возвращает строку, соответствующую исходной, но без начальных пробельных символов TrimRight AnsiString TrimRight() const Возвращает строку, соответствующую исходной, но без заключительных пробельных символов Unique void Unique() Делает строку уникальной, т.е. устанавливает число ссылок на нее (refcnt) в 1. Таким образом, на нее ссылается только Uppercase AnsiString UpperCase() const Возвращает строку, в которой все символы приведены к верхнему регистру. Не влияет на исходную строку WideChar wchar_t* WideChar(wchar_t* dest, int destSize) const Преобразует строку в массив символов dest типа wchar_t WideCharBuf- int WideCharBufSize() const Size Возвращает размер буфера, требуемого для функции WideChar Application — переменная Глобальная переменная типа TApplication.

Описание В каждом приложении автоматически создается объект Application типа TApplication — приложение. Этот компонент отсутствует в палитре библиотеки, вероятно, только потому, что он всегда один в приложении. Application имеет ряд свойств, методов, событий, характеризующих приложение в целом.

Булево свойство Active (только для чтения) характеризует активность приложения. Оно равно true, если форма приложения находится в фокусе. Если же пользователь переключился на работу с другим приложением, свойство Active равно false.

Свойство ExeName является строкой, содержащей имя выполняемого файла с полным путем к нему. Это свойство удобно использовать, чтобы определить каталог, из которого запущено приложение и который может содержать другие файлы (настройки, документы, базы данных и т.п.), связанные с приложением. Выражение ExtractFilePath(Application—ExeName) дает этот каталог. Обычно свойство ExeName тождественно функции ParamStr(O), возвращающей нулевой параметр командной строки — имя файла с путем.

Свойство Title определяет строку, которая появляется около пиктограммы свернутого приложения. Если это свойство не изменяется во время выполнения, то оно равно опции Title, задаваемой во время проектирования на странице Application окна опций проекта (команда Project | Options). Свойство может изменяться программно, например, изменяя надпись в зависимости от режима работы приложения.

Свойство MainForm типа TForm определяет главную форму приложения. Булево свойство ShowMainForm определяет, должна ли главная форма быть видимой в момент запуска приложения на выполнение. По умолчанию оно равно true, что обеспечивает видимость главной формы в момент начала работы приложения. Если же установить в головном файле проекта Application—ShowMainForm равным false до вызова метода Application—Run() и если при этом свойство Visible главной формы тоже равно false, то главная форма в первый момент будет невидимой.

Свойство HelpFile указывает файл справки, который используется в приложении в данный момент как файл по умолчанию. Если это свойство не изменяется во время выполнения, то оно равно опции Help File, задаваемой во время проектирования на странице Application окна опций проекта (команда Project | Options). Свойство можно изменять программно, назначая в зависимости от режима работы приложения тот или иной файл справки.

Ряд свойств объекта Application определяет ярлычки подсказок компонентов приложения. Свойство Hint содержит текст подсказки Hint того визуального компонента или раздела меню, над которым в данный момент перемещается курсор мыши. Смена этого свойства происходит в момент события Onffint, которое будет рассмотрено позднее. Во время этого события текст подсказки переносится из свойства Hint компонента, на который переместился курсор мыши, в свойство Hint объекта Application. Свойство Application—Hint можно использовать для отображения этой подсказки или для установки и отображения в полосе состояния текста, характеризующего текущий режим приложения.

Свойство HintColor типа TColor определяет цвет фона окна ярлычка. По умолчанию это цвет clInfoBk, но его значение можно изменять программно. Свойство HintPause определяет задержку появления ярлычка в миллисекундах после переноса курсора мыши на очередной компонент (по умолчанию 500 миллисекунд или половина секунды). Свойство HintHidePause аналогичным образом определяет интервал времени, после которого ярлычок становится невидимым (по умолчанию 2500 миллисекунд или две с половиной секунды). Свойство HintShortPause определяет аналогичным образом задержку перед появлением нового ярлычка, если в данный момент отображается другой ярлычок (по умолчанию 50 миллисекунд).

Это свойство позволяет предотвратить неприятное мерцание, если пользователь быстро перемещает курсор мыши над разными компонентами.

Теперь рассмотрим некоторые методы объекта Application. Методы Initialize — инициализация проекта, и Run — запуск выполнения приложения, включаются в каждый проект автоматически — вы можете это увидеть в головном файле проекта, если выполните команду Project | View Source. Там же вы можете увидеть применение метода создания форм CreateForm для всех автоматически создаваемых форм проекта. Если же в вашем проекте есть форма, которая исключена из списка автоматически создаваемых (команда Project | Options и соответствующая установка на странице Forms), то когда эта форма вам потребуется, вы должны будете вызвать этот метод:

void CreateFormfSystem::TMetaClass* InstanceClass, где InstanceClass — класс создаваемой формы, который указывается операцией classid, a Reference — ссылка на создаваемый объект (его имя). Например:

Application-CreateForm( c l a s s i d ( T F o r m 2 ), SForm2);



Pages:     | 1 || 3 | 4 |   ...   | 85 |
 


Похожие работы:

«А. Л. ЧИБИЛЁВ ЗЕМНОВОДНЫЕ И ПРЕСМЫКАЮЩИЕСЯ ОРЕНБУРГСКОЙ ОБЛАСТИ И ИХ ОХРАНА РОССИЙСКАЯ АКАДЕМИЯ НАУК УРАЛЬСКОЕ ОТДЕЛЕНИЕ ИНСТИТУТ ЭКОЛОГИИ РАСТЕНИЙ И ЖИВОТНЫХ ОРЕНБУРГСКИЙ ОТДЕЛ СТЕПНОГО ПРИРОДОПОЛЬЗОВАНИЯ ОРЕНБУРГСКИЙ ОБЛАСТНОЙ КОМИТЕТ ОХРАНЫ ПРИРОДЫ. ОРЕНБУРГСКИЙ ФИЛИАЛ РУССКОГО ГЕОГРАФИЧЕСКОГО ОБЩЕСТВА Материалы для Красной книги Оренбургской области ЕКАТЕРИНБУРГ 1995 Издание завершает серию публикаций научных трудов Оренбургского отдела степного природопользования Института экологии...»

«М.И. АБДУЛАЕВ ТЕОРИЯ ГОСУДАРСТВА И ПРАВА Учебник Издание второе, дополненное Допущено Министерством образования Российской Федерации в качестве учебника для студентов высших учебных заведений, обучающихся по специальности 021100 – Юриспруденция МОСКВА 2004 Абдулаев М.И. Теория государства и права: Учебник для высших учебных заведений. – М.: Финансовый контроль, 2004 – 410 с. (Серия Учебники для вузов). Рецензенты: Туманов В.А. – доктор юридических наук, профессор, Заслуженный деятель науки...»

«Аннотация Образ Александра Грина сам по себе настолько обаятелен и человечески чист, а его стремление увидеть жизнь освобожденной от свинцовых мерзостей и от всяческой скверны так резко отделяет его от петербургской литературной богемы, ярко изображенной в повести, что Грин превращается у Борисова в благородного рыцаря, чемто напоминающего ДонКихота. (Евг.Брандис) Содержание Глава первая 4 Глава вторая 20 Глава третья 30 Глава четвертая 43 Глава пятая 50 Глава шестая 61 Глава седьмая 77 Глава...»

«Православие и современность. Электронная библиотека А. П. Лопухин Толковая Библия или комментарий на все книги Священного Писания Ветхого и Нового Заветов. Книга пророка Иезекииля © Holy Trinity Orthodox Mission Содержание Книга пророка Иезекииля Глава I. Видение Славы Божией на Херувимах 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 Глава II. Призвание к пророчеству 1 2 3 4 5 6 7-9 10 Глава III. Вступление пророка в служение. 1-3. Съедение свитка. 4-11....»

«Часть I. Источники церковного права. Введение. Церковь и право. Богочеловеческая природа Церкви. Право. Применимость правовых норм к жизни Церкви. Место церковного права в системе права. Церковное право как наука. Название дисциплины: каноническое и церковное право. Изучение церковного права в Византии и Греции. Изучение церковного права в России и на Балканах. Изучение церковного права на Западе. Задача, метод и система науки церковного права. Источники Церковного права. Материальные...»

«Глава сельсовета Г.В. Фролова Утвержден постановлением...»

«Основы любительской радиосвязи Справочное пособие для начинающих коротковолновиков (электронная версия 5.0.1) Издание 5-е, переработанное и дополненное Хабаровск 2012 2 Об авторе: Заморока Александр Николаевич. Родился 5 марта 1960 года в поселке Хурмули Солнечного района Хабаровского края (СССР). Профессиональный юрист. В 1988 году окончил Всесоюзный юридический заочный институт, а в 1995 году Академию управления МВД России. Пенсионер МВД. Ветеран труда. Награжден медалями МВД РФ и СССР За...»

«8/9618 Об утверждении Инструкции о порядке формирования и ведения регистрационной книги (06.06.2003) В целях реализации положений Закона Республики Беларусь от 22 июля 2002 г. О госу дарственной регистрации недвижимого имущества, прав на него и сделок с ним (Националь ный реестр правовых актов Республики Беларусь, 2002 г., № 87, 2/882) Комитет по земель ным ресурсам, геодезии и картографии при Совете Министров Республики Беларусь поста новляет: Утвердить прилагаемую Инструкцию о порядке...»

«Ольга Смолянко СОЗДАНИЕ НЕКОММЕРЧЕСКИХ ОРГАНИЗАЦИЙ В БЕЛАРУСИ ПРАВОВЫЕ АСПЕКТЫ 2-е издание, исправленное и дополненное Минск Медисонт 2012 УДК 061.2(476):34 ББК 66.7(4Беи) С51 Ссылки на нормативно-правовые акты представлены по состоянию на 1 сентября 2012 года Информационные материалы по правовому регулированию деятельности некоммерческих организаций можно найти на сайте Фонда развития правовых технологий и Центра правовой трансформации http://lawtrend.org Смолянко, О. С51 Создание...»

«Аннотация Книга написана одними из лучших и востребованных тренеров России по личностному росту и включает в себя их самые сильные практические тренинги. Весь материал представлен в виде пошаговых инструкций. Читатель, выполняя 1 час в день упражнения, приведенные в книге, через 2 месяца выйдет на совершенно новый уровень развития! Основной акцент сделан на проработке ключевых элементов жизни, которые коренным образом влияют на нее. Авторы дают подробные инструкции и практические задания по...»






 
© 2013 www.knigi.konflib.ru - «Бесплатная электронная библиотека»

Материалы этого сайта размещены для ознакомления, все права принадлежат их авторам.
Если Вы не согласны с тем, что Ваш материал размещён на этом сайте, пожалуйста, напишите нам, мы в течении 1-2 рабочих дней удалим его.