Вверх ↑
Пакеты 
HiAsm4
Windows 
Компоненты 
Oкнo 
Общие - WinInfo

WinInfo
Краткое описание
   Компонент предназначен для получения дополнительной информации об окне
Параметры

Методы
  • doWinInfo - Получает информацию об окне по его идентификатору. ARG(Handle)
  • События
  • onWinInfo - Событие происходит всякий раз после получения информации об окне. ARG(NULL)
  • Свойства
  • ClassName - Содержит имя класса, которому принадлежит окно
  • Caption - Содержит заголовок окна
  • LanguageName - Содержит язык ввода окна
  • Left - Содержит отступ окна слева
  • Top - Содержит отступ окна сверху
  • Width - Содержит ширину окна
  • Height - Содержит высоту окна
  • ClientLeft - Содержит отступ клиентской области окна слева
  • ClientTop - Содержит отступ клиентской области окна сверху
  • ClientWidth - Содержит ширину клиентской области окна
  • ClientHeight - Содержит высоту клиентской области окна
  • Context - Контекст устройства окна
  • ThreadID - Содержит идентификатор вызывающего потока окна
  • ProcessID - Содержит идентификатора процесса окна
  • ControlID - Содержит идентификатор органа управления окна
  • Icon - Содержит иконку, связанную с окном
  • IsWindow - Содержит состояние достоверности окна (0 - окно недостоверное; 1 - достоверное)
  • IsEnebled - Содержит состояние разрешенности ввода для окна (0 - окно не разрешено для ввода; 1 - разрешено)
  • IsVisible - Содержит состояние видимости окна (0 - окно невидимое; 1 - видимое)
  • IsZoomed - Содержит состояние развернутости окна (0 - свернутое в иконку; 1 - нормальное; 2 - максимизированное)
  • ParentHandle - Содержит идентификатор родительского окна
  • Данные
  • Handle - Идентификатор окна
  • Примеры
    Пример использования компонента WinInfo
    
    Add(MainForm,2953706,91,84)
    {
    Width=298
    Height=144
    Caption="Пример WinInfo"
    }
    Add(WinInfo,5981331,161,140)
    {
    Point(Width)
    Point(Height)
    link(onWinInfo,10076224:doString,[(266,146)(266,257)(149,257)(149,209)])
    link(Handle,8168705:Handle,[])
    }
    Add(MouseEvent,8168705,147,84)
    {
    Point(Handle)
    }
    Add(Timer,5593132,91,140)
    {
    Interval=100
    link(onTimer,5981331:doWinInfo,[])
    }
    Add(FormatStr,10076224,161,203)
    {
    DataCount=4
    Mask="\r\nCaption: %2\r\n\r\nClassName: %1\r\n\r\nSize: %3 x %4"
    link(onFString,13141247:doText,[])
    link(Str1,5981331:ClassName,[])
    link(Str2,5981331:Caption,[])
    link(Str3,5981331:Width,[])
    link(Str4,5981331:Height,[])
    }
    Add(Memo,13141247,217,182)
    {
    Width=290
    Height=117
    Align=5
    }


    Пример отрисовки текста на контексте чужого окна с применением компонента WinInfo
    
    Add(MainForm,2953706,406,301)
    {
    Visible=1
    TaskBar=1
    Point(onClose)
    Point(Close)
    }
    Add(WinEnum,16070666,168,168)
    {
    link(onFindWindow,5366351:doWinInfo,[])
    }
    Add(WinInfo,5366351,224,168)
    {
    Point(ProcessID)
    Point(Context)
    Point(Width)
    link(onWinInfo,7453905:doCompare,[])
    link(Handle,4811835:Var3,[(230,156)(205,156)(205,212)])
    }
    Add(EnumProcess,12326089,112,161)
    {
    Name="Hiasm.exe"
    Point(doFindName)
    Point(onFind)
    link(onFind,16070666:doEnum,[])
    }
    Add(If_else,7453905,308,168)
    {
    link(onTrue,14266306:doSplit,[])
    link(Op1,5366351:ProcessID,[(314,156)(296,156)(296,212)(244,212)])
    link(Op2,12326089:CurrentID,[(321,151)(212,151)(212,218)(118,218)])
    }
    Add(MultiStrData,14266306,357,168)
    {
    Char=" "
    link(Str,5366351:Caption,[(363,156)(346,156)(346,218)(237,218)])
    link(onPart1,5033018:doCompare,[])
    }
    Add(If_else,5033018,406,168)
    {
    Op2=String(Конструктор)
    link(onTrue,9566465:doCalc,[])
    }
    Add(DocumentTemplate,3227997,567,168)
    {
    DrawSource=2
    Name="dtmp"
    link(onDraw,206563:doRedraw,[])
    link(Bitmap,5366351:Context,[(573,151)(395,151)(395,224)(251,224)])
    }
    BEGIN_SDK
    Add(Print_Text,11987365,-3,-3)
    {
    Name="txt"
    Width=246
    Height=24
    Text="Отрисовка на чужом контексте"
    Font=[MS Sans Serif,10,1,65535,1]
    Vertical=1
    Top=0
    }
    END_SDK
    Add(WinTools,206563,616,140)
    {
    Point(doRedraw)
    link(Handle,4811835:Var1,[(622,99)(157,99)(157,212)])
    }
    Add(GetDataEx,4811835,168,207)
    {
    link(Data,16070666:Handle,[])
    }
    Add(Timer,15003433,56,182)
    {
    Interval=50
    link(onTimer,12326089:doFindName,[])
    }
    Add(Timer,1285238,203,238)
    {
    link(onTimer,5331966:doNext,[])
    }
    Add(PC_Text,13187686,406,245)
    {
    ItemName="txt"
    Document="dtmp"
    link(onText,2530833:doWork3,[(550,251)])
    }
    Add(HubEx,2530833,546,168)
    {
    link(onEvent,3227997:doDraw,[])
    }
    Add(Counter,5331966,252,238)
    {
    link(onNext,1942604:doCase,[])
    }
    Add(Case,1942604,308,238)
    {
    Value=Integer(2)
    DataOnTrue=String(HiAsm рулит!)
    link(onNextCase,7985061:doCase,[(352,244)(352,262)(296,262)(296,279)])
    link(onTrue,1500043:doWork2,[])
    }
    Add(Case,7985061,308,273)
    {
    Value=Integer(4)
    DataOnTrue=String(Good Bye!)
    link(onNextCase,13769095:doCase,[(352,279)(352,297)(296,297)(296,314)])
    link(onTrue,8481579:doWork2,[])
    }
    Add(Case,13769095,308,308)
    {
    Value=Integer(5)
    DataOnTrue=String()
    link(onTrue,13289398:doEvent1,[])
    }
    Add(Hub,13289398,357,315)
    {
    link(onEvent1,8481579:doWork3,[(389,321)])
    link(onEvent2,2953706:doClose,[])
    }
    Add(HubEx,1500043,385,245)
    {
    link(onEvent,13187686:doText,[])
    }
    Add(HubEx,8481579,385,280)
    {
    Angle=3
    link(onEvent,1500043:doWork3,[])
    }
    Add(PC_Position,12963329,504,168)
    {
    ItemName="txt"
    Document="dtmp"
    link(onPosition,2530833:doWork2,[])
    link(Y,9239445:Value,[])
    }
    Add(MathParse,9566465,455,168)
    {
    MathStr="(%2 - %1) - 100"
    link(onResult,12963329:doPosition,[])
    link(X1,6030157:CurrentWidth,[])
    link(X2,5366351:Width,[(468,157)(445,157)(445,230)(258,230)])
    }
    Add(PC_Size,6030157,455,105)
    {
    ItemName="txt"
    Document="dtmp"
    }
    Add(Memory,9239445,511,105)
    {
    Default=Integer(6)
    }

    Замечания
    Обновление элемента: [svn]WinInfo.pas[/svn]
    BB-code статьи для вставки
    Всего комментариев: 0
    (комментарии к статье еще не добавлены)
    Комментарий
    ...