Кампоненты страницы SYSTEM

Автор работы: Пользователь скрыл имя, 24 Мая 2013 в 16:39, реферат

Краткое описание

В этом разделе не описаны расположенные на этой странице компоненты TDDEClient, TDDEClientItem, TDDEServer И TDDEServerItem.
Они рассчитаны на поддержку устаревшей технологии межпрограммного обмена данными DDE - Dynamic Data Exchange (динамический обмен данными), которая в современных программах полностью вытеснена технологией OLE.

Вложенные файлы: 1 файл

КОМПОНЕНТЫ СТРАНИЦЫ SYSTEM.doc

— 1.01 Мб (Скачать файл)

Если разрешен множественный выбор, доступ к выбранным именам можно  получить в свойстве Files: strings. 

 

18.5.2. TOpenPictureDialog и TSavePictureDialog - диалоги открытия и сохранения  изображений

Специализированные диалоги для  открытия и сохранения графических  файлов TOpenPictureDialog И TSavePictureDialog отличаются от

TOpenDialog и TSaveDialog двумя обстоятельствами. Во-первых, в них предусмотрены стандартные фильтры для выбора графических файлов (с расширениями bmp, ico, wmf и emf) . Во-вторых, в окна диалога включены панели для предварительного просмотра выбираемого файла.

На рис. 18.39 показано стандартное окно компонента TOpenPictureDialog.

18.5.3. TFontDialog - диалог выбора  шрифта

Компонент TFontDialog создает и обслуживает  стандартное окно выбора шрифта (рис. 18.41). Свойство

TFontDialogDevice = (fdScreen, fdPrinter, fdBoth) ;

property Device: TFontDialogDevice;

определяет тип устройства, для  которого выбирается шрифт:

fdScreen - экран; fdPrinter - принтер; fdBoth - шрифты, поддерживаемые и экраном, и  принтером.

(Левая часть окна)

(Правая часть окно)

Рис. 18.39. Стандартное окно TopenPictureDialog

Рис. 18.40. Стандартное окно TFontDialog

Диапазон возможных значений размеров шрифтов определяется свойствами MinFontSize и MaxFontSize. Значения этих свойств задаются в пунктах (1 пункт равен1/72 дюйма, что приблизительно равно 0,36 мм). Если свойства содержат 0, ограничения на размер шрифта отсутствуют.

Свойство

TFontDialogOption = (fdAnsiOnly, fdTrueTypeOnly, fdEffects, fdFixedPitchOnly, fdForceFontExist, fdNoFaceSel, fdNoOEMFonts, fdNoSimulations, fdNoSizeSel, fdNoStyleSel, fdNoVectorFonts, fdShowHelp, fdWysiwyg, fdLimitSize, fdScalableOnly, fdApply-Button);

TFontDialogOptions = set of TFontDialogOption;

property Options: TFontDialogOptions;

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

fdAnsiOnly

Показывает только шрифты с набором  символов Windows

fdTrueTypeOnly

Показывает только TrueType-шрифты

fdEffects

Включает в окно переключатели Подчеркнутый и Зачеркнутый, а также список выбора цвета шрифта только моноширинные шрифты

fdFixedPitchOnly

Включает только моноширинные шрифты

fdForceFontExist

Предупреждает о выборе несуществующего  шрифта

fdNoFaceSel

Запрещает выделение имени шрифта в момент открытия окна

fdNoOEMFonts

Запрещает выбор MS-DOS-шрифтов

fdNoSimulations

Исключает шрифты, которые синтезируются  графическим интерфейсом Windows

fdNoSizeSel

Запрещает выделение размера шрифта в момент открытия окна

fdNoStyleSel

Запрещает выделение стиля шрифта в момент открытия окна

fdNoVectorFonts

Исключает векторные шрифты (шрифты для Windows версии 1.0; используются в плоттерах)

fdShowHelp

Включает в диалоговое окно кнопку Help шрифты, которые поддерживаются и экраном, и принтером

fdWysiwyg

Включает шрифты, которые поддерживаются и экраном, и принтером

fdLimitSize

Включает ограничения на размер шрифта, заданные свойствами MaxFontSize И MinFontSize

fdScalableOnly

Включает только масштабируемые шрифты (векторные и TrueType)

fdApplyButton

Включает в окно кнопку применить


 

 Результат выбора шрифта содержит свойство Font.

18.5.4. TColorDialog - диалог выбора  цвета

Компонент создает и обслуживает  стандартное диалоговое окно выбора цвета, показанное на рис. 18.42.

Свойства компонента:

property Color: TColor;

Содержит выбранный цвет

property CustomColors: TStrings;

Содержит до 16 цветов, определенных пользователем. Каждая строка имеет такой формат: Со1огх=нннннн, где х - буква от а до р, определяющая номер цвета, нннннн ~ шестнадцатеричное представление цвета в формате rgb

TColorDialogOption = (cdFullOpen, cdPreventFullOpen, cdShowHelp, cdSolidColor, cdAnyColor) ; TColorDialogOptions = set of TColorDialogOption; property Options: TColorDialogOptions;

Определяет настройку окна: cdFullOpen -показывать с развернутым окном  выбора цвета пользователя; cdPreventFullOpen -запретить показ окна выбора цвета пользователя; cdShowHelp - включить в окно кнопку Help; cdSolidColor - выбирать ближайший сплошной цвет; cdAnyColor -разрешить выбор не сплошных цветов


Рис. 18.41. Стандартное окно компонента TColorDialog

18.5.5. TPrintDialog - диалог настройки  параметров печати

Компонент TPrintDialog создает стандартное  диалоговое окно для выбора параметров печати, показанное на рис. 18.42.

Рис. 18.42. Стандартное окно компонента TPrintDialog

Свойства компонента:

property Collate: Boolean;  

 

 

 

 

 

 

 

 

 

 

 

 

Если имеет значение True, окно показывается с выбранным переключателем разобрать (collate). Если этот переключатель выбран, печать нескольких копии документа будет идти по копиям: сначала первая копия, затем вторая и т. д., в противном случае - по страницам: сначала все копии первой страницы, затем второй и т. д

property Copies: Integer;

Определяет количество копии (0 - одна копия)

property FromPage: Integer

Определяет начальную страницу печати

property MaxPage: Integers;

Определяет верхнюю границу  диапазона страниц для свойств FromPage, ToPage

property MinPage: Integer; 

Определяет нижнюю границу диапазона  страниц для свойств FromPage, ToPage

TPrintDialogOption =

(poPrintToFile, poPageNums, poSe-

lection, poWarning, poHelp, poDisablePrintToFile) ;

TPrintDialogOptions = set of TPrintDialogOption; property Options: TPrintDialogOptions;

Определяет настройку окна: poPrintToFile - печатать в файл; poPrintToFile - разрешает  выбор диапазона страниц; poSelection - разрешает печать выбранного текста; poWarning - предупреждать пользователя о неустановленном принтере; poHelp вставить в окно кнопку Help; poDisablePrintToFile - запрещает печать в файл

TPrintRange = (prAllPages, prSelection, prPageNums) ;

property PrintRange: TPrintRange; 

Определяет диапазон печатаемых страниц: prAllPages - все страницы; preelection - выделенный фрагмент текста; prPageNums - страницы по номерам

property PrintToFile: Boolean;  

Содержит True, если пользователь выбрал печать в файл

property ToPage: Integer;

Определяет конечную страницу печати


 

 

18.5.6. TPrinterSetupDialog - диалог  настройки параметров принтера

Компонент создает окно настройки  параметров принтера, вид которого зависит от типа принтера. Этот диалог взаимодействует с драйвером  принтера и не возвращает в программу  никакой информации, поэтому его  метод Execute - процедура, а не функция.

18.5.7. TFindDialog - диалог поиска

Стандартное диалоговое окно компонента TFindDialog используется для поиска фрагмента  текста (рис. 18.43).

Свойства компонента:

property FindText: String;

Указывает образец для поиска

property Left: Integer;

Содержит горизонтальную позицию  левого верхнего угла места появления  окна

property Options: TFindOptions;

Определяет настройку диалога (см. ниже)

property Position: TPoint;

Содержит горизонтальную и вертикальную позицию левого верхнего угла места  появления окна

property Top: Integer;

Содержит вертикальную позицию  левого верхнего угла места появления  окна


 

 Для компонента определен следующий тип, использующийся в свойстве options:

TFindOption = (frDown, frFindNext, frHideMatchCase, frHideWholeWord, frHideUpDown, frMatchCase, frDisableMatchCase, frDisableUpDown, frDisableWholeWord, frReplace, frReplaceAll, frWholeWord, frShowHelp) ;

TFindOptions = set of TFindOption;

Рис. 18.43. Стандартное окно компонента TFindDialog

Его значения имеют следующий смысл:

frDown frFindNext

Устанавливает поиск вперед по тексту

frHideMatchCase

Сообщает программе, что пользователь нажал кнопку Найти далее Убирает  выбор в переключателе с учетом регистра

frHideWholeWord

Убирает выбор в переключателе  только слово целиком

frHideUpDown

Прячет кнопки выбора направления  поиска

frMatchCase

Устанавливает выбор в переключателе  с учетом регистра

frDisableMatchCase

Запрещает выбор С учетом регистра

frDisableUpDown

Запрещает выбор направления поиска

frDisableWholeWord

Запрещает выбор только слово целиком 

frReplace

Используется в компоненте TReplacteDialog и указывает на необходимость  замены текущего выбора

frReplaceAll

Используется в компоненте TreplaceDialog и указывает на необходимость замены всех вхождений образца поиска

frWholeWord

Устанавливает выбор в переключателе  Только слово целиком.

frShowHelp

Включает в окно кнопку Help


 

 Спецификой диалога  является реализуемая им возможность просмотра найденного фрагмента и при необходимости продолжение поиска. С этой целью для компонента определено событие OnFind:

TNotifyEvent, которое возникает всякий  раз, когда пользователь нажимает  кнопку найти далее. Обработчик  события должен найти образец в тексте и показать его пользователю. Пусть, например, компонент Memol содержит отыскиваемый фрагмент и поиск идет с учетом регистра. Тогда обработчик может иметь такой вид:

procedure TFormI.FindDialoglFind(Sender: TObject);

var

SelPos: Integer;

begin

with TFindDialog(Sender) do

begin

// Ищем фрагмент в тексте

SelPos := Pos(FindText, Memol-Lines.Text);

if SelPos > 0 then

begin // Фрагмент найден - выделяем его

Memol.SelStart := SelPos - 1;

Memol.SelLength := Length(FindText);

end

else

ShowMessage ('Текст "' + FindText + '"не найден')

end;

end;

18.5.8. TReplaceDialog - диалог  поиска и замены

Компонент TReplaceDialog создает и обслуживает  окно поиска и замены текстового фрагмента (см. рис. 18.44).

Рис. 18.44. Стандартное окно компонента TReplaceDialog 

Класс TReplaceDialog является прямым потомком класса TFindDialog и наследует от него большинство свойств. Дополнительно  в компоненте определено свойство RepiaceText: string, в котором содержится текст  замены, и событие OnRepiace, которое  возникает

При нажатии кнопки заменить или заменить все.

18.6. КОМПОНЕНТЫ  СТРАНИЦЫ WIN3.1

Многие компоненты страницы win3.1 имеют  более совершенные аналоги в  виде компонентов страницы Win32. Если вы работаете с windows 32, рекомендуется  использовать вместо компонентов Win 3.1 компоненты Win32.

18.6.1. TTabSet - набор закладок

Компонент TTabSet представляет собой  набор закладок. В отличие от компонента TTabControl он не может служить контейнером  для размещения других компонентов  и поэтому обычно работает совместно  с каким-либо компонентом-контейнером (чаще всего - с TNotebook).

Свойства компонента:

property AutoScroll: Boolean;

Разрешает/запрещает появление  стрелок прокрутки, если закладки не умещаются целиком в границах компонента

property BackgroundColor: TColor;

Определяет цвет фона закладок

property DitherBackground: Boolean;

Если содержит True, уменьшается насыщенность цвета BackgroundColor

property EndMargin: Integer;

Отступ закладок от правой границы  компонента

property Firstlndex: Integer;

Содержит индекс самой левой закладки, целиком видимой на экране

property SelectedColor: TColor;

Содержит цвет выбранной закладки (обычно совпадает с цветом связанного компонента-контейнера)

property StartMargin: Integer;

TTabStyle = (tsStandard, tsOwnerDraw);

Отступ закладок от левой границы компонента

property Style: TTabStyle;

Определяет способ прорисовки закладок: tsStandard - автоматический; tsOwnerDraw - программный

property TabHeight: Integer,

Определяет высоту закладок в пикселях

property Tablndex: Integer;

Содержит индекс выбранной закладки (индексация начинается с 0)

property UnselectedColor: TColor;

Определяет цвет невыбранных закладок

property VisibleTabs: Integer;

Содержит количество закладок, целиком  видимых в границах компонента

Методы компонента:

function ItemAtPos(Pos: TPoint): Integer;

Возвращает индекс закладки, которой  принадлежит точка Pos

function ItemRect(Item: Integer): TRect;

Возвращает прямоугольник прорисовки закладки с индексом item

procedure SelectNext(Direction: Boolean) ;

Смещает выбор к соседней закладке: Direction - направление смещения (True - вправо)

Для компонента определены следующие  события:

TTabChangEvent = procedure (Sender: TObject; NewTab: Integer; var AllowChange: Boolean) of object;

Возникает перед сменой выбранной  закладки: NewTab - индекс закладки, которая будет выбрана. В параметре AllowChange обработчик должен разрешить или запретить выбор закладки

property OnChange: TTabChangingEvent; TDrawTabEvent = procedure(Sender: TObject; TabCanvas: TCanvas; R: TRect; Index: Integer; Selected: Boolean) of object;

Возникает при необходимости прорисовать  закладку с индексом index, если она  имеет стиль tsOwnerDraw: TabCanvas - канва  для прорисовки; Selected - содержит True для  выбранной закладки

property OnDrawTab: TDrawTabEvent; TMeasureTabEvent = procedure(Sender: TObject; Index: Integer; var TabWidth: Integer) of object-property OnMeasureTab: TMeasureTabEvent;

Возникает перед прорисовкой закладки с индексом index, если она имеет  стиль tsOwnerDraw. В параметре TabWidth обработчик должен вернуть ширину закладки


 

 Как уже говорилось, часто компонент TTabSet связывается  с компонентом TNotebook для организации  многостраничного блокнота с закладками. В этом случае в обработчике событий OnChange или

OnClick компонента следует предусмотреть изменение текущей страницы блокнота. Например:

procedure TFormI.TabSetlChange(Sender: TObject;

NewTab: Integer;

var AllowChange: Boolean);

begin

AllowChange := True; // Разрешаем смену закладки

Notebookl.Pagelndex := NewTab // Меняем страницу блокнота

end;

18.6.2. TNotebook - набор страниц

Многостраничный контейнер TNotebook обычно работает в паре с TTabSet и предназначен для размещения других компонентов  на нескольких перекрывающих друг друга  страницах (панелях).

Свойства компонента:

property ActivePage: Strings;

Определяет имя верхней страницы блокнота

property Pagelndex: Integers;

Содержит индекс верхней страницы блокнота

property Pages: TStrings;

Содержит набор строк с именами  страниц


 

 Ключевым свойством  является Pages. С помощью его методов Add, Delete, Find и т. д. можно добавлять и удалять страницы, отыскивать Нужную и т. д. (см. класс TStrings).

Для компонента определено событие

property OnChange: TNotifyEvent;

которое возникает при смене  страницы.

18.6.3. TTabbedNotebook - набор страниц  с закладками

Компонент TTabbedNotebook представляет собой  объединение TTabSet и TNotebook в готовый  многостраничный блокнот с заклад-ками. В отличие от TTabSet закладки в TabbedNotebook могут располагаться в несколько  рядов.

Свойства ActivePage, Pagelndex И Pages компонента совпадают c одноименными свойствами компонента TNotebook. Свойство property TabsPerRow: Integer; определяет количество закладок в одном ряду.

С помощью метода function GetIndexForPage(const PageName: String): Integer; программа может  получить индекс страницы по ее имени PageName.

18.6.4. TOutLine - просмотр иерархических  структур

Подобно компоненту TTreeview страницы Win32 компонент Tout-Line предназначен для отображения  иерархических структур данных (каталогов, например). Элементом отображения является узел. Каждый узел имеет родительский узел и дочерние узлы. Исключение составляет узел самого верхнего уровня (он не имеет родительского узла) и узлы самых нижних уровней (они не имеют дочерних узлов),

Для каждого узла компонент создает  объект класса TOutLineNode. Его свойства:

property Data: Pointers;

Указатель на связанные с узлом  данные

property Expanded: Boolean;  

Если содержит True, с узлом связан раскрытый список дочерних узлов

property FullPath: String;

Содержит полное имя узла со списком имен всех родительских узлов, разделенных символом ItemSeparator объекта ToutLine

property Hasltems: Boolean;

Содержит True, если с узлом связаны  дочерние узлы

property Index: Longint;  

Содержит уникальный идентификатор  узла в компоненте ToutLine

property IsVisible: Boolean;

Содержит True, если узел виден в окне компонента ToutLine

property Level: Integer; 

 

 

Определяет уровень иерархии узла. Узел самого верхнего уровня имеет  уровень 0, его дочерние узлы - уровень 1, их дочерние узлы - уровень 2 и т. д.

property Text: String;

Определяет имя узла

property Topltem: Longint;  

 

 

Содержит индекс своего родительского  узла первого уровня (родительский узел нулевого уровня не виден в  компоненте TOutLine)

Информация о работе Кампоненты страницы SYSTEM