
- •Операции
- •Типы данных
- •Стандартные математические функцииObjectPascal
- •Подпрограммы для работы с датой и временем
- •Процедуры и функции для работы со строками
- •Варианты
- •Подпрограммы
- •Заголовок и стандартные директивы
- •Кодировка символов в соответствии со стандартомAnsi
- •Исключения
- •Встроенные классы КлассTlist- списки
- •TString- набор строк
- •TStringList– набор объектов
- •КлассTStream– потоки данных
- •КлассTFont
- •Класс tPen
- •КлассTBrush
- •КлассTCanvas
- •КлассTGraphic
- •КлассTPicture:
- •Виртуальные коды клавиш:
- •Компоненты страницыstandard tFrame- рама и шаблоны компонентов
- •Свойства tControlScrollBar.
- •TMainMenu- главное меню формы (программы)
- •TLabel- метка для отображения текста Свойства компонента (кроме унаследованных от tGraphicControT)
- •TEdit- ввод и отображение строки Свойства компонента:
- •Методы компонента:
- •TMemo- ввод и отображение текста
- •TButton - кнопка
- •TCheckBox- независимый переключатель
- •TListBox- список выбора
- •TScrollBar- управление значением величины
- •TRadioGroup- группа зависимых переключателей
- •События tAction
- •Компоненты страницыadditional tBitBtn- кнопка с изображением
- •TMaskEdit- специальный редактор Описатели полей ввода представлены в следующей таблице:
- •TStringGrid- таблица строк Свойства компонента:
- •Два метода класса могут оказаться полезными для процедуры прорисовки:
- •Доступные компоненту события:
- •TDrawGrid- произвольная таблицасвойств:
- •TImage- отображение картинок
- •TCheckListBoxгруппа независимых переключателей
- •TSplitter- компонент для изменения размеров
- •TControIBar- инструментальная панель Свойства компонента:
- •События компонента:
- •TApplicationEvents - обработчик сообщений Windows Методы компонента:
- •События:
- •Компоненты страницы win32 tTabControl- набор закладокСвойства компонента:
- •TPageControl- набор страниц с закладками Свойства компонента
- •Методы компонента:
- •TRichEdit- ввод и отображение rtf-текст
- •Свойства классаTRichEdit:
- •Методы компонента:
- •Для компонента определены такие события:
- •TTrackBar- регулятор величины
- •TProgressBar- индикатор прогресса Свойства компонента:
- •Методы компонента:
- •TUpDown- спаренная кнопка
- •THotKey- ввод акселератора
- •TAnimate- отображение анимации Свойства компонента:
- •Методы компонента:
- •Для компонента определены следующие события:
- •TDateTimePicker- ввод и отображение даты/времени Свойства компонента:
- •Для компонента определены следующие события:
- •TMonthCalendar- календарь
- •TTreeView- дерево иерархии Свойства компонентаTTreeView.
- •Методы компонента:
- •С компонентом связаны такие события:
- •Свойства классаTTreeNodes.
- •Методы класса tTreeNodes.
- •Свойства tTreeNode
- •Методы класса tTreeNode
- •Некоторые важные свойства компонентаTListView- список просмотра
- •Класс tIconOption - ополнительные условия отображения узлов
- •Свойства класса tListItems:
- •Методы класса tListItems.
- •THeaderControl - управляющий заголовок Свойства класса tHeader-Section:
- •Некоторые свойства класса tHeader-Section:
- •Свойства компонента tHeaderControl:
- •Для компонента определены следующие события:
- •TStatusBar- информационная панель
- •Свойства компонента tStatusBar.
- •Для компонента определены такие события:
- •TToolBarиToolButton- инструментальная панель и её кнопки СвойстваToolButton:
- •Свойства компонента tToolBar.
- •TCoolBar и tCooIBand - инструментальная панель и её полосы Свойства tCoolBand:
- •Свойства компонента tCoolBar.
- •Для компонента определены такие события:
- •TPageScroller- панель с прокруткой
- •Компоненты страницыsystem tMediaPlayer– медиаплейер Свойства компонента:
- •Методы компонента:
- •Для компонента определены следующие события:
- •TOleContainer- контейнер объектовOle Свойства компонента:
- •Методы компонента:
- •Для компонента определены такие события:
- •Компоненты страницыwin3.1 tTabSet - набор закладок Свойства компонента:
- •Методы компонента:
- •Для компонента определены следующие события:
- •TNotebook- набор страниц
- •TTabbedNotebook- набор страниц с закладками
- •Класс tOutLineNode: методы
- •Свойства компонента tOutLine
- •Методы компонента:
- •Для компонента определены следующие события:
- •THeader - управляющий заголовок
- •Методы компонента:
- •TDirectoryListBox- панель с именами устройств Свойства компонента:
- •Методы компонента:
- •TDriveComboBox- список выбора устройства
- •TFilterComboBox- список выбора с расширениями файлов
- •Компоненты страницыsamples tGauge - индикатор величины
- •TColorGrid- выбор или отображение цвета
- •TSpinEditредактор для ввода целого числа
- •TCalendar- ввод и отображение даты Свойства компонента:
- •Методы компонента:
- •Компонент tform Свойства формы:
- •Методы формы:
- •События формы:
- •Application Свойства
- •Методы Application:
- •Для объекта Application определены следующие события:
- •Screen Свойства объекта Screen:
- •С объектомScreenсвязаны два события:
- •Printer Свойства объекта Printer:
- •Методы объекта Printer:
- •Clipboard Свойства объекта Clipboard:
- •Методы объекта Clipboard:
- •Файлы инициации
- •Класс tIniFile Методы класса tIniFile:
- •Системный реестрWindows
- •КлассTRegistry свойства:
- •Методы классаTRegistry:
- •КлассTRegIniFile
- •Переменные, процедуры и функции модуляsystem
- •Оглавление
Процедуры и функции для работы со строками
Function AnsiLowerCase(const S: String): String; |
Возвращает исходную строку S, в которой все заглавные буквы заменены на строчные в соответствии с национальной кодировкойWindows(т.е. с учетом кириллицы). |
Function AnsiUpperCase(const S: String): String; |
Возвращает исходную строку S, в которой все строчные буквы заменены на заглавные в соответствии с национальной кодировкойWindows. |
Function ConCat(S1 [, S2, …,Sn]: String): String; |
Возвращает строку, представляющую собой сцепление строк параметров S1, S2… Sn. |
Function Copy(St: String; Index, Count: Integer); |
Копирует из строки StCount символов начиная с символа с номеромIndex. |
Procedure Delete(St: String; Index, Count: Integer); |
Удаляет Count символов из строкиStначиная с символа с номераIndex. |
Procedure Insert(SubSt: String; St, Index: Integer); |
Вставляет подстроку SubStв строкуStначиная с символа с номеромIndex. |
Function Length(St: String): Integer; |
Возвращает текущую длину строки St. |
Function LowerCase(const S: String): String; |
Возвращает исходную строку S, в которой все латинские заглавные буквы заменены на строчные. |
Procedure OleStrToStrVar(Source: PwideChar; var Dest: String); |
Копирует «широкую» (двухбайтную строку в обычную строку ObjectPascal. |
Function Pos(SubSt, St: String): Integer; |
Отыскивает в строке St первое вхождение подстрокиSubStи возвращает номер позиции, с которой она начинается. Если подстрока не найдена, возвращается ноль. |
Procedure SetLenght(St: String; NewLenght: Integer); |
Устанавливает новую(меньшую) длину NewLenghtстрокиSt. ЕслиNewLenghtбольше текущей длины строки, обращение кSetLenght игнорируется. |
Function StringOfChar(Ch: Char; Count: Integer): String; |
Создает строку, состоящую из Countраз повторенного символаCh. |
Function StringToOleStr(const Source: String): PWideChar; |
Копирует обычную строку в двухбайтную. |
Function StringToWideChar(const Source: String; Dest: PWideChar; DestSize: Integer): PWideChar; |
Преобразует обычную строку в строку с символами UNICODE. |
Function UpperCase(const S: String): String; |
Возвращает исходную строку S, в которой все строчные латинские буквы заменены на заглавные. |
Подпрограммы преобразования строк в другие типы | |
Function StrToCurr(St: String): Currency; |
Преобразует символы строки в целое число типа Currency. Строка не должна содержать ведущих или ведомых пробелов. |
Function StrToDate(St: String): TDateTime; |
Преобразует символы строки Stв дату. Строка должна содержать два или три числа, разделенными правильными дляWindowsразделителями даты (в русифицированной версии таким разделителем является«.»). Первое число – правильный день, второе – правильный месяц. Если указано третье число, оно должно задавать год в форматеXXилиXXXX. Если символы года отсутствуют, дата дополняется текущим годом. Например:DateToStr(StrToDate(’28.06’)) даст строку ’28.06.99’ |
Function StrToDateTime(St: String): TDateTime; |
Преобразует символы строки Stв дату и время. Строка должна содержать правильную дату (см.StrToDate) и правильное время (см.StrToTime) разделенные пробелом, например:StrToDateTime(’28.06 18:23’) |
Function StrToFloat(St: String): Extended; |
Преобразует символы строки Stв вещественное число. Строка не должна содержать ведущих или ведомых пробелов. |
Function StrToInt(St: String): Integer; |
Преобразует символы строки Stв целое число. Строка не должна содержать ведущих или ведомых пробелов. |
Function StrToIntDef(St: String; Default: Integer): Integer; |
Преобразует символы строки Stв целое число. Если строка не содержит правильного представления целого числа, возвращает значениеDefault. |
Function StrToIntRange(St: String; Min, Max: LongInt): LongInt; |
Преобразует символы строки Stв целое число и возбуждает исключениеErangeError, если число выходит из заданного диапазонаMin…Max. |
Function StrToTime(St: String): TDateTime; |
Преобразует символы строки Stво время. Строка должна содержать два или три числа, разделенных правильным дляWindowsразделителем времени (для русифицированной версии таким разделителем является«:»). Числа задают часы, минуты и, возможно секунды. За последним числом через пробел могут следовать символы«am»или«pm»,указывающие на 12-часовой формат времени. |
Procedure Val(St: String; var X; Code: Integer); |
Преобразует строку символов Stво внутреннее представление целой или вещественнойX, которое определяется типом этой переменной. ПараметрCodeсодержит ноль, если преобразование прошло успешно, и тогда вXпомещается результат преобразования, в противном случае он содержит номер позиции в строкеSt, где обнаружен ошибочный символ, и в этом случае содержимоеXне меняется. В строкеStмогут быть ведущие и/или ведомые пробелы. |
Подпрограммы обратного преобразования | |
Function DateTimeToStr(Value: TDateTime): String; |
Преобразует дату и время из параметра Valueв строку символов. |
Procedure (DateTimeToString(var St: String; Format: String; Value: TDateTime); |
Преобразует дату и время из параметра Valueв строкуStв соответствии со спецификаторомFormat. |
Function DateToStr(Value: TDateTime): String; |
Преобразует дату из параметра Valueв строку символов. |
Function FloatToStr(Value: Extended): String; |
Преобразует вещественное значение Valueв строку символов. |
Function FloatToStrF(Value: Extended; Format: TFloatFormat; Precision, Digits: Integer): String; |
Преобразует вещественное значение Valueв строку символов с учетом форматаFormatи параметровPrecisionиDigits. |
Function FormatDateTime(Format: String; Value: TDateTime): String; |
Преобразует дату и время из параметра Valueв строку символов в соответствии со спецификаторами параметраFormat. |
Function FormatFloat(Format: String; Value: Extended): String; |
Преобразует вещественное значение Valueв строку символов с учетом спецификаторов форматаFormat. |
Function IntToHex(Value: Integer; Digits: Integer): String; |
Преобразует целое число Valueв строку символьного представления шестнадцатеричного формата:Digits– минимальное количество символов в строке. |
Function IntToStr(Value: Integer): String; |
Преобразует целое значение Valueв строку символов. |
Procedure Str(X [:Width [:Decimals]]; var St: String; |
Преобразует число Xлюбого вещественного или целого типов в строку символовSt; параметрыWidthиDecimals. Если они присутствуют, задают формат преобразования:Widthопределяет общую ширину поля, выделенного под соответствующее символьное представление вещественного числаX, аDecimals– количество символов в дробной части (этот параметр имеет смысл только в том случае, когдаX– вещественное число). |
Function TimeToStr(Value: TDateTime): String; |
Преобразует время из параметра Valueв строку символов. |
Правила использования параметров функции FloatToStrF | |
Значение Format |
Описание |
ffExponent |
Научная форма представления с множителем еХХ («умножить на 10 в степени XX»). Precision задает общее количество десятичных цифр мантиссы, Digits - количество цифр в десятичном порядке XX. Число округляется с учетом первой отбрасываемой цифры: 3,1416Е+00. |
ffFixed |
Формат с фиксированным положением разделителя целой и дробной частей. Precision задает общее количество десятичных цифр в представлении числа, Digits - количество цифр в дробной части. Число округляется с учетом первой отбрасываемой цифры: 3,14. |
ffGeneral |
Универсальный формат, использующий наиболее удобную для чтения форму представления вещественного числа. Соответствует формату ffFixed, если количество цифр в целой части меньше или равно Precision, а само число - больше или равно 0,00001, в противном случае соответствует формату ffExponent: 3,1416. |
ffNumber |
Отличается от: ffFixed использованием символа-разделителя тысяч при выводе больших чисел (для русифицированной версии Windows таким разделителем является пробел). Для Value = тг*1000 получим 3 141,60. |
ffCurrency |
Денежный формат. Соответствует ffNumber, но в конце строки ставится символ денежной единицы (для русифицированной версии Windows - символы «р.»). Для Value = *1000 получим 3 141, 60р. |
Спецификаторы форматирования вещественных чисел | |
0 |
Определяет поле для цифры. Если в данной позиции форматируемое число имеет значащую цифру, она выводится, если нет – выводится 0 |
# |
Определяет поле для цифры. Если в данной позиции форматируемое число имеет значащую цифру, она выводится, если нет – ничего не выводится |
. |
Поле для разделителя целой и дробной частей числа |
, |
Поле для разделителя тысяч |
E+, e+, E-, e- |
Признак представления числа в научном формате. В этом случае число представляется мантиссой и десятичным порядком, между которыми стоит символ E. Спецификаторы Е+ и e+ предписывают выводить знак + перед неотрицательным десятичным порядком, при использовании E- и e- знак + перед порядком не выводится. |
; |
Разделитель спецификаторов формата для положительного, отрицательного и нулевого числа. |
Подпрограммы для работы с нуль-терминальными строками | |
Function CharToOem (Str, OemStr: Pchar): Bool; |
Преобразует символы строки Str из кодировки ANSI в кодировку MS-DOS и перемещает результат в OemStr. Всегда возвращает True. |
Function CharToOemBuff (Str, OemStr: Pchar; MaxLen: LongInt): Bool; |
Преобразует не более MaxLen символов строки Str из кодировки ANSI в кодировку MS-DOS и помещает результат в OemStr. Всегда возвращает True. |
Function OemToChar (OEMStr, Str: Char): Bool; |
Преобразует символы из кодировки MS-DOS в кодировку ANSI и возвращает True. |
Function OemToCharBuff (OEMStr, Str: PChar; MaxLen: Longint): Bool; |
Преобразует не более MaxLen символов строки OemStr из кодировки MS-DOS в кодировку ANSI и помещает результат в Str. Всегда возвращает True. |
Function StrCat(Dest, Source: PChar): PChar; |
Копирует строку Source в конец строки Dest и возвращает указатель на строку Dest. |
Function StrComp (Strl, Str2: PChar): Integer; |
Побайтно сравнивает строку Strl со строкой Str2 и возвращает следующий результат: =0 для Strl=Str2; >0 для Str1> Str2; О u, Strl<Str2. |
Function StrCopy(Dest, Source: PChar): PChar; |
Копирует строку Source в строку Dest и возвращает указатель на Dest. StrCopy не проверяет реальный размер памяти, связанный с Dest (он должен быть не меньше StrLen(Source)+1). |
Procedure StrDispose(Str:PChar); |
Удаляет строку Str из памяти. Строка должна быть предварительно помещена в память функцией StrNew. Если Str=NIL, процедура ничего не делает. |
Function StrECopy(Dest,Source: PChar): PChar; |
Объединяет строки. Эта функция работает в точности как StrCat, но возвращает указатель на конец сцепленных строк, т.е. на терминальный ноль. |
Function StrEnd(Str:PChar): PChar; |
Функция возвращает указатель на терминальный ноль строки Str. |
Function StrIComp(Strl, Str2: PChar): PChar; |
Функция сравнивает строки, игнорируя возможную разницу в высоте букв. Возвращает такой же результат, как и StrComp. Замечу, что функция правильно работает лишь с латиницей. Для кириллицы ее нужно модифицировать. |
Function StrLCat(Dest, Source: PChar; MaxLen: Word): PChar; |
Копирует символы строки Source в конец строки Dest до тех пор, пока не будут скопированы все символы или пока длина сцепленной строки Dest не достигнет MaxLen. Возвращает указатель на сцепленную строку. В отличие от StrCopy эта функция блокирует возможное переполнение области памяти, связанной с Dest. Обычно в качестве MaxLen используется выражение SizeOf(Dest) -1. |
Function StrLComp(Dest, Source: PChar; MaxLen: Word): PChar; |
В отличие от StrComp сравнивает не более MaxLen символов строк. Возвращаемый результат такой же, как и у StrComp. |
Function StrLCopy(Dest, Source: PChar; MaxLen: Word): PChar; |
Копирует символы из строки Source в строку Dest до тех пор, пока не будет скопирована вся строка или пока не будет скопировано MaxLen символов. В отличие от StrCopy блокирует возможное переполнение области памяти, связанной с Dest. В качестве MaxLen обычно используется выражение SizeOf (Dest) -1. |
Function StrLen(Str:PChar): Cardinal; |
Возвращает длину строки. |
Function StrLIComp(Strl, Str2: PChar; MaxLen: Word): PChar; |
Сравнивает не более MaxLen символов строк, проверяя точное соответствие высоты букв. Возвращаемый результат см. StrComp. Функция правильно работает только с латиницей. |
Function StrLower(Str:PChar): PChar; |
Преобразует заглавные буквы строки Str к строчным и возвращает указатель на результат. Функция правильно работает только с латиницей. |
Function StrMove(Dest, Source: PChar; Count: Word): PChar; |
Копирует точно Count символов строки Source в строку Dest и возвращает указатель на результат. Функция игнорирует действительные размеры строк и может выйти за их пределы. |
Function StrNew(Str: PChar) Pchar; |
Помещает строку в память. |
Function StrPas(Str: PChar) : String; |
Преобразует нуль-терминальную строку в строку String. |
Function StrPCopy(Str: PChar; S: String): PChar; |
Преобразует строку String в нуль-терминальную строку. Возвращает указатель на Str. |
Function StrPos(Strl, Str2: PChar): PChar; |
Ищет подстроку Str2 в строке Strl и возвращает указатель на первое вхождение Str2 или NIL, если подстрока не найдена. |
Function StrScan(Str: PChar; Ch: Char): Pchar; |
Ищет символ Ch в строке Str и возвращает указатель на последний обнаруженный символ Ch или NIL, если символ не найден. |
Function StrScan(Str; PChar; Ch: Char): PChar; |
Ищет символ Ch в строке Str и возвращает указатель на первый обнаруженный символ Ch или NIL, если символ не найден. |
Function StrUpper(Str: Pchar): Pchar; |
Преобразует строчные буквы строки Str к заглавным и возвращает указатель на результат. Функция правильно работает только с латиницей. |