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

TForm

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

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

frmObj=new TForm();

frmObj=new TForm(ParentFormObj);

Собственные свойства
Свойство Тип Описание
ActiveControl TComponent дескриптор визуального компонента, имеющего фокус ввода
AlphaBlend Boolean форма является прозрачной
AlphaBlendValue Number уровень прозрачности формы (при установленном свойстве AlphaBlend) от 0 (полностью прозрачна) до 255 (полностью непрозрачна)
AutoScroll Boolean автоматически добавлять полосы прокрутки при выходе размеров формы за пределы экрана
AutoSize Boolean автоматически подгонять размер формы под размер содержимого
BorderIcons Enumset набор кнопок, расположенных на полосе заголовка (см. ниже)
BorderStyle Enum стиль окна формы (см. ниже)
Caption String заголовок окна формы
DefaultMonitor Enum монитор для отображения формы (см. ниже)
FormStyle Enum стиль поведения формы (см. ниже)
HelpFile String файл контекстной помощи, открываемый по нажатию клавиши F1
HorzScrollBar TControlScrollBar дескриптор компонента горизонтальной прокрутки
Icon TIcon пиктограмма, отображаемая на панели задач, при сворачивании окна формы
KeyPreview Boolean получать события клавиатуры до их получения дочерними компонентами формы
Menu TMainMenu дескриптор главного меню формы
ModalResult Enum результат закрытия формы, передаваемый в родительскую форму (см. ниже)
PixelsPerInch Number стандартное разрешение формы, пикселей на дюйм (ppi)
Position Enum начальная позиция окна формы (см. ниже)
PrintScale Enum масштабирование изображения формы при печати (см. ниже)
Scaled Boolean масштабировать форму при изменении разрешения экрана
ScreenSnap Boolean разрешить "прилипание" формы к краю экрана при ее перемещении близко к краю
SnapBuffer Number расстояние до края экрана, при котором форма "прилипает" к нему (при установленном свойстве ScreenSnap)
TransparentColor Boolean разрешить полную прозрачность одного из цветов формы
TransparentColorValue TColor цвет формы, который станет полностью прозрачным (при установленном свойстве TransparentColor)
VertScrollBar TControlScrollBar дескриптор компонента вертикальной прокрутки
WindowState Enum начальное состояние окна формы (см. ниже)
Только чтение
Active Boolean форма имеет фокус ввода
Canvas TCanvas дескриптор графической канвы
FormState Enum текущее состояние формы (см. ниже)

Свойство BorderIcons
Значение Описание
biHelp отображать кнопку контекстной подсказки
biMaximize отображать кнопку разворачивания/максимизации окна
biMinimize отображать кнопку сворачивания/минимизации окна
biSystemMenu добавить системное меню

Свойство BorderStyle
Значение Описание
bsNone окно без заголовка и рамки
bsSingle стандартное окно фиксированного размера
bsSizeable стандартное окно с изменяемым размером
bsDialog стандартное диалоговое окно фиксированного размера
bsToolWindow диалоговое окно фиксированного размера и уменьшенным заголовком
bsSizeToolWin диалоговое окно с изменяемым размером и уменьшенным заголовком

Свойство DefaultMonitor
Значение Описание
dmActiveForm форма появится на том же мониторе, что и текущая форма
dmDesktop форма появится на мониторе, который отображает рабочий стол Windows
dmMainForm форма появится на том же мониторе, что и главная форма
dmPrimary форма появится на мониторе, который стоит первым в свойстве Monitors системного объекта Screen

Свойство FormStyle
Значение Описание
fsNormal обычный стиль
fsStayOnTop отображать поверх всех окон

Свойство Position
Значение Описание
poDefault положение и размер формы определяет Windows; при последовательных показах формы ее положение сдвигается немного вниз и вправо
poDefaultPosOnly положение формы определяет Windows; при последовательных показах формы ее положение сдвигается немного вниз и вправо
poDefaultSizeOnly размер формы определяет Windows
poDesigned положение и размер формы определяются ее свойствами Left, Top, Width и Height
poScreenCenter форма располагается в центре экрана
poDesktopCenter окно располагается в центре рабочего стола Windows
poMainFormCenter для дочерних форм: форма располагается в центре главной формы
poOwnerFormCenter для дочерних форм: форма располагается в центре родительской формы

Свойство PrintScale
Значение Описание
poNone масштабирование отсутствует
poProportional масштабировать в пропорции, равной соотношению dpi у формы и принтера
poPrintToFit то же, что и poProportional, но с учетом размера бумаги

Свойство WindowState
Значение Описание
wsMaximized окно максимизировано
wsMinimized окно свернуто
wsNormal окно имеет заданные размеры

Свойство FormState
Значение Описание
fsActivated форма активирована
fsCreating происходит создание формы
fsModal форма создана как модальное окно
fsShowing изменяется свойство WindowState
fsVisible форма отображена на экране

Свойство ModalResult
Значение Описание
mrNone ничего не передавать (по умолчанию)
mrOk нажата кнопка "ОК"
mrCancel нажата кнопка "Отмена"
mrAbort нажата кнопка "Прервать"
mrRetry нажата кнопка "Повторить"
mrIgnore нажата кнопка "Пропустить"
mrYes нажата кнопка "Да"
mrNo нажата кнопка "Нет"
mrAll нажата кнопка "Для всех"
mrNoToAll нажата кнопка "Нет для всех"
mrYesToAll нажата кнопка "Да для всех"
mrClose нажата кнопка "Закрыть"

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

Собственные методы
Метод Описание
Close закрывает форму
CloseQuery возвращает возможность закрытия формы
DefocusControl снимает фокус ввода с указанного компонента
FocusControl устанавливает фокус ввода на указанный компонент
GetFormImage возвращает изображение клиентской области формы
Print распечатывает изображение клиентской области формы
ShowModal отображает форму в модальном режиме

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

Собственные события
Событие Описание
OnActivate окно формы активизировано (получен фокус ввода)
OnClose окно формы будет закрыто
OnCloseQuery требуется разрешение на закрытие формы
OnCreate окно формы создано, но еще не показано на экране
OnDeactivate фокус ввода передан другому окну той же программы
OnDestroy окно формы будет разрушено
OnHide окно формы скрыто с экрана
OnPaint окно формы будет перерисовано
OnShow окно формы показано на экране

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

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

// Строка состояния
stb=new TStatusBar(frm);

// Кнопка
btn=new TButton(frm);
btn.Caption="Popup";
btn.Left=frm.ClientWidth-btn.Width-10;
btn.Top =stb.Top-btn.Height-10;
btn.OnClick=btn_Click;

// Панель закладок
pgc=new TPageControl(frm);
pgc.SetBounds(10,10,frm.ClientWidth-20,btn.Top-20);
pgc.OnChange=pgc_Change;

for (i=0;i<2;i++) {
  // Закладка
  tsh=new TTabSheet(pgc);
  switch (i) {
    case 0: tsh.Caption="BorderIcons";
            clb=new TCheckListBox(tsh);
            clb.Align=alClient;
            clb.BorderStyle=bsSingle;
            clb.OnClickCheck=clb_ClickCheck;
            clb.Items.Add("biHelp");
            clb.Items.Add("biMaximize");
            clb.Items.Add("biMinimize");
            clb.Items.Add("biSystemMenu");
            for (j=0;j<clb.Items.Count;j++)
              if (frm.BorderIcons & eval(clb.Items[j]))
                clb.Checked[j]=true;
            break;

    case 1: tsh.Caption="BorderStyle";
            rdg=new TRadioGroup(tsh);
            rdg.Align=alClient;
            rdg.OnClick=rdg_Click;
            rdg.Items.Add("bsNone");
            rdg.Items.Add("bsSingle");
            rdg.Items.Add("bsSizeable");
            rdg.Items.Add("bsDialog");
            rdg.Items.Add("bsToolWindow");
            rdg.Items.Add("bsSizeToolWin");
            for (j=0;j<rdg.Items.Count;j++)
              if (frm.BorderStyle==eval(rdg.Items[j])) {
                rdg.ItemIndex=j;
                break;
              }
  }
}

pgc_Change(pgc);
frm.ShowModal();

// Обработчик события OnChange
function pgc_Change(pgc)
{
  var stb_Str=" Укажите свойство ";

  switch (pgc.ActivePageIndex) {
    case 0: stb_Str+="BorderIcons"; break;
    case 1: stb_Str+="BorderStyle";
  }

  stb.SimpleText=stb_Str;
}

// Обработчик события OnClick кнопки
function btn_Click(btn)
{
  var fmc,mcl,pt,x,y;

  // Полупрозрачная форма под календарь
  fmc=new TForm();
  fmc.AlphaBlendValue=150;
  fmc.AlphaBlend=true;
  fmc.Caption=" Календарь";
  fmc.KeyPreview=true;
  fmc.OnKeyPress=fmc_KeyPress;

  // Календарь
  mcl=fmc.cmpTag=new TMonthCalendar(fmc);
  mcl.OnDblClick=mcl_DblClick;

  // Подогнать размер формы под размер календаря
  fmc.Position=poDesigned;
  fmc.ClientWidth =mcl.Width;
  fmc.ClientHeight=mcl.Height;

  x=btn.Left-fmc.Width-10;
  y=btn.Top+btn.Height-fmc.Height;
  pt=frm.ClientToScreen(Point(x,y));
  fmc.Left=pt.x;
  fmc.Top =pt.y;

  stb.SimpleText=" Выберите дату ...";

  fmc.ShowModal();
}

// Обработчик события OnClick радио-группы
function rdg_Click(rdg)
{
  frm.BorderStyle=eval(rdg.Items[rdg.ItemIndex]);
}

// Обработчик события OnKeyPress
function fmc_KeyPress(fmc,Key)
{
  var d;

  switch (Key.Value) {
    case VK_ENTER : d=new Date(fmc.cmpTag.Date);
                    stb.SimpleText=
                    " Выбрана дата: "+d.toLocaleDateString();
    case VK_ESCAPE: fmc.Close();
  }
}

// Обработчик события OnDblClick
function mcl_DblClick(mcl)
{
  var d=new Date(mcl.Date);

  stb.SimpleText=" Выбрана дата: "+d.toLocaleDateString();
  mcl.Parent.Close();
}

// Обработчик события OnClickCheck
function clb_ClickCheck(clb)
{
  var i,State;

  for (i=State=0;i<clb.Items.Count;i++)
    if (clb.State[i]==cbChecked)
      State|=eval(clb.Items[i]);

  frm.BorderIcons=State;
}
Совместимость
C++ Builder/Delphi
См. также
JS+Руководство пользователя
Адрес этой страницы: http://jsplus.ru/MANUAL/JSPlus/Component/TForm.htm
© 2024,