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

TShape

- визуальный компонент
Компоненты JS+
Определяет одну из стандартных графических фигур.

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

shpObj=new TShape(Parent);

Собственные свойства
Свойство Тип Описание
Brush TBrush дескриптор кисти графической канвы
Pen TPen дескриптор пера графической канвы
Shape Enum тип графической фигуры (см. ниже)
Только чтение
Canvas TCanvas дескриптор графической канвы

Свойство Shape
Значение Описание
stCircle круг
stEllipse эллипс
stRectangle прямоугольник
stRoundRect прямоугольник с плавными углами
stRoundSquare квадрат с плавными углами
stSquare квадрат

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

Собственные методы
Метод Описание
StyleChanged перерисовывает текущую графическую фигуру

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

Стандартные события

Пример (JS+)
// Главная форма
frm=new TForm();
frm.Caption="JS+ - визуальный компонент TShape";
frm.Width =600;
frm.Height=450;

// Строка состояния
stb=new TStatusBar(frm);
stb.SimpleText=
" Выберите фигуру из списка или перемещайтесь по списку"+
" колесом мыши";

// ListBox
lsb=new TListBox(frm);
lsb.BorderStyle=bsSingle;
lsb.SetBounds(10,10,frm.ClientWidth/5,stb.Top-20);
lsb.Items.Add("Square");
lsb.Items.Add("RoundSquare");
lsb.Items.Add("Rectangle");
lsb.Items.Add("RoundRect");
lsb.Items.Add("Circle");
lsb.Items.Add("Ellipse");
lsb.OnMouseDown=lsb_MouseDown;
lsb.OnMouseWheel=lsb_MouseWheel;

// Панель
pnl=new TPanel(frm);
pnl.BorderStyle=bsSingle;
pnl.Color=lsb.Color;
pnl.Left=lsb.Left+lsb.Width+10;
pnl.Top =lsb.Top;
pnl.Width =frm.ClientWidth-pnl.Left-10;
pnl.Height=stb.Top-20;

// Shape
shp=new TShape(pnl);
shp.SetBounds(50,50,pnl.ClientWidth-100,pnl.ClientHeight-100);
shp.Brush.Color=clNavy;

lsb.ItemIndex=0;
lsb.SetFocus();
frm.ShowModal();

// Обработчик события OnMouseDown
function lsb_MouseDown(lsb,btn,sft,x,y)
{
  var lsb_Str="",i=lsb.ItemIndex;

  lsb.Selected[i]=true;

  if (btn!=mbLeft)
    return;

  switch (shp.Shape=eval("st"+lsb.Items[i])) {
    case stRoundRect : lsb_Str=" с плавными углами";
    case stRectangle : lsb_Str="прямоугольник"+lsb_Str; break;
    case stRoundSquare: lsb_Str=" с плавными углами";
    case stSquare : lsb_Str="квадрат"+lsb_Str; break;
    case stEllipse : lsb_Str="эллипс"; break;
    case stCircle : lsb_Str="круг"; break;
               default: return;
  }

  stb.SimpleText=" Выбран "+lsb_Str;
}

// Обработчик события OnMouseWheel
function lsb_MouseWheel(lsb,sft,dlt,pos,handled)
{
  if (dlt>0) {
    if (lsb.ItemIndex>0)
      --lsb.ItemIndex;
  }
  else
  if (dlt<0) {
    if ((lsb.ItemIndex+1)<lsb.Count)
      ++lsb.ItemIndex;
  }
  else
    return;

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