JS+
Усиленный язык сценариев для Windows
с возможностью встраивания
в ваши приложения
О языке JS+ Справочник Скачать JS+ DLL
Контакты
СПРАВОЧНИК ПО ЯЗЫКУ JS+ Содержание

TImageList

- базовый компонент
Базовые компоненты JS+
Определяет список изображений одинакового размера.

Создание объекта

imgLstObj=new TImageList();

Собственные свойства
Свойство Тип Описание
AllocBy Number величина приращения длины списка при добавлении нового изображения (по умолчанию 1)
BkColor TColor фоновый цвет изображений
BlendColor TColor цвет переднего плана изображений
ColorDepth Enum цветовая глубина изображений (см. ниже)
DrawingStyle Enum способ вывода изображений (см. ниже)
Handle Number дескриптор списка Windows GDI
Height Number высота изображений (по умолчанию 16)
ImageType Enum тип изображений (см. ниже)
Masked Boolean использовать маску при выводе изображений; маскируемая часть изображения либо выводится как прозрачная, либо заполняется цветом свойства BkColor
Width Number ширина изображений (по умолчанию 16)
Только чтение
Count Number количество изображений в списке

Свойство ColorDepth
Значение Описание
cd4Bit 4 бита (16 цветов)
cd8Bit 8 бит (64 цвета)
cd16Bit 16 бит (256 цветов)
cd24Bit 24 бита (TrueColor)
cd32Bit 32 бит (TrueColor + альфа-канал)
cdDefault по умолчанию
cdDeviceDependent зависит от устройства отображения

Свойство DrawingStyle
Значение Описание
dsFocus цвет изображения смешивается на 25% с цветом свойства BlendColor
dsNormal фоновым является цвет свойства BkColor; если значение свойства BkColor равно clNone, то изображение рисуется с использованием прозрачного цвета и маски
dsSelected цвет изображения смешивается на 50% с цветом свойства BlendColor
dsTransparent изображение рисуется прозрачным цветом независимо от значения свойства BkColor

Свойство ImageType
Значение Описание
itImage картинка
itMask маска

Стандартные свойства

Собственные методы
Метод Описание
Add добавляет к списку указанное изображение
AddIcon добавляет к списку указанную пиктограмму
AddImage добавляет к списку изображение из указанного списка с указанным индексом
AddImages добавляет к списку все изображения из указанного списка
AddMasked добавляет к списку указанное изображение с указанным прозрачным цветом
Clear удаляет все изображения из списка
Delete удаляет изображение с указанным индексом
Draw выводит изображение с указанным индексом в указанную позицию
DrawOverlay выводит слой многослойного изображения с указанным индексом в указанную позицию
GetBitmap возвращает изображение с указанным индексом как компонент TBitmap
GetIcon возвращает изображение с указанным индексом как компонент TIcon
GetImageBitmap возвращает Windows-дескриптор изображения, включающего все картинки списка
GetMaskBitmap возвращает Windows-дескриптор изображения, включающего все маски списка
HandleAllocated проверяет наличие у списка изображений дескриптора Windows GDI
Insert вставляет указанное изображение с указанной маской в указанную позицию списка
InsertIcon вставляет указанную пиктограмму в указанную позицию списка
InsertMasked вставляет указанное изображение с указанным прозрачным цветом в указанную позицию списка
Move переставляет изображения с указанными индексами
Overlay объявляет изображение с указанным индексом слоем многослойного изображения
Replace заменяет изображение с указанным индексом
ReplaceIcon заменяет пиктограмму с указанным индексом
ReplaceMasked заменяет изображение с указанным индексом и прозрачным цветом
SetSize устанавливает указанные размеры изображений в списке

Стандартные методы

Собственные события
Событие Описание
OnChange изменился состав списка изображений
Пример (JS+)
// Главная форма
frm=new TForm();
frm.Caption="JS+ - базовый компонент TImageList";
frm.Width =450;
frm.Height=300;

// Строка состояния
stb=new TStatusBar(frm);
stb.SimpleText=
" Листайте список изображений левой и правой кнопками";

// Список изображений
iml=new TImageList();
iml.Width=iml.Height=64;
icn=new TIcon();
for (i=0;i<5;i++) {
  icn.LoadFromFile(JSPlus.HelpDir+"IMAGE\\TImageList\\"+i+".ico");
  iml.AddIcon(icn);
}
icn.Delete();

// Панель для изображения
pnl=new TPanel(frm);
pnl.BorderStyle=bsSingle;
pnl.Color=clWhite;
pnl.Width=pnl.Height=100;
pnl.Left=(frm.ClientWidth-pnl.Width)/2;
pnl.Top =(stb.Top-pnl.Width)/2;

// Контейнер PaintBox
pbx=new TPaintBox(pnl);
pbx.Align=alClient;
pbx.OnPaint=pbx_Paint;

// Левая кнопка
btl=new TButton(frm);
btl.Caption="<";
btl.Width=btl.Height;
btl.Left=pnl.Left-btl.Width-10;
btl.Top=pnl.Top+(pnl.Height-btl.Height)/2;
btl.OnClick=btn_Click;

// Правая кнопка
btr=new TButton(frm);
btr.Caption=">";
btr.Width=btl.Width;
btr.Left=pnl.Left+pnl.Width+10;
btr.Top=btl.Top;
btr.OnClick=btn_Click;

Hand_Buttons();
frm.ShowModal();

// Устанавливает состояние кнопок
function Hand_Buttons()
{
  btl.Enabled=(iml.numTag==0) ? false : true;
  btr.Enabled=(iml.numTag==(iml.Count-1)) ? false : true;
}

// Обработчик события OnPaint
function pbx_Paint(pbx)
{
  var cnv=pbx.Canvas;
  var x=(pbx.Width -iml.Width )/2;
  var y=(pbx.Height-iml.Height)/2;

  // Очистить канву
  cnv.Brush.Style=bsSolid;
  cnv.Brush.Color=clWhite;
  cnv.FillRect(cnv.ClipRect);

  // Вывести изображение
  iml.Draw(cnv,x,y,iml.numTag);
}

// Обработчик события OnClick
function btn_Click(btn)
{
  switch (btn.Caption) {
    case "<": --iml.numTag; break;
    case ">": ++iml.numTag;
  }

  pbx_Paint(pbx);
  Hand_Buttons();
}
Совместимость
C++ Builder/Delphi
См. также
JS+Руководство пользователя
Адрес этой страницы: http://jsplus.ru/MANUAL/JSPlus/Component/Base/TImageList.htm
© 2024,