Вверх ↑
Ответов: 878
Рейтинг: 187
#1: 2021-11-12 20:55:43 ЛС | профиль | цитата
egorhay писал(а):
Не знаю правильно или нет.

Правильно.
А пример я бы сделал так

Add(MainForm,6168681,259,49)
{
 Width=620
 Height=429
 Caption="Прозрачная форма, не реагирующая на мышь"
 DragForm=0
 Point(Handle)
 Point(PHandle)
 link(onCreate,4866552:doPopup,[(298,69)(298,111)])
}
Add(WinTools,4866552,315,98)
{
 Point(doAlphaBlendValue)
 link(Handle,12939580:Var3,[(321,89)])
}
Add(InlineCode,4502086,259,133)
{
 WorkPoints=#15:doTransparentOn|16:doTransparentOff|
 DataPoints=#6:Handle|
 Code=#15:unit HiAsmUnit;|0:|9:interface|0:|29:uses kol,Share,Debug,Windows;|0:|4:type|28: THiAsmClass = class(TDebug)|10:   private|0:|9:   public|22:   Handle : THI_Event;|59:   Procedure doTransparentOn (var _Data:TData; Index:word);|60:   Procedure doTransparentOff (var _Data:TData; Index:word);|5: end;|0:|14:implementation|0:|69:Procedure  THiAsmClass.doTransparentOn (var _Data:TData; Index:word);|5:Begin|136:  SetWindowLong(ReadInteger(_Data,Handle,0), GWL_EXSTYLE, GetWindowLong(ReadInteger(_Data,Handle,0), GWL_EXSTYLE) or WS_EX_TRANSPARENT);|4:end;|0:|73:   Procedure  THiAsmClass.doTransparentOff (var _Data:TData; Index:word);|5:Begin|141:  SetWindowLong(ReadInteger(_Data,Handle,0), GWL_EXSTYLE, GetWindowLong(ReadInteger(_Data,Handle,0), GWL_EXSTYLE) and not WS_EX_TRANSPARENT);|4:end;|0:|0:|4:end.|
 link(Handle,12939580:Var2,[])
}
Add(Switch,4079365,203,126)
{
 DataOn=Integer(150)
 DataOff=Integer(255)
 Point(onOn)
 Point(onOff)
 link(onSwitch,4866552:doAlphaBlendValue,[])
 link(onOn,4502086:doTransparentOn,[])
 link(onOff,4502086:doTransparentOff,[])
}
Add(ChildForm,6796585,133,119)
{
 link(onEvent1,14165339:doDeferredEvent,[(172,125)(172,76)])
 link(onEvent2,4079365:doSwitch,[])
}
BEGIN_SDK
  Add(EditMulti,15061766,21,21)
  {
   EventCount=2
  }
  Add(MainForm,16614817,35,105)
  {
   Left=35
   Top=105
   Width=190
   Height=79
   Caption="Пульт"
   BorderStyle=4
   Point(onClose)
   Point(onHide)
   link(onHide,15061766:onEvent1,[(74,139)(74,27)])
  }
  Add(Button,6893416,140,105)
  {
   Width=184
   Align=5
   Caption="Вкл. прозрачность"
   Point(doCaption)
   link(onClick,7955996:doSwitch,[])
  }
  Add(Switch,7955996,182,105)
  {
   DataOn=String(Выкл. прозрачность)
   DataOff=String(Вкл. прозрачность)
   link(onSwitch,11648948:doEvent1,[])
  }
  Add(Hub,11648948,231,105)
  {
   link(onEvent1,6893416:doCaption,[(256,111)(256,97)(130,97)(130,111)])
   link(onEvent2,15061766:onEvent2,[(275,118)(275,34)])
  }
END_SDK
Add(GetDataEx,12939580,259,84)
{
 link(Data,6168681:Handle,[])
}
Add(DeferredEvent,14165339,203,70)
{
 link(onDeferredEvent,6168681:doClose,[])
}

карма: 18

0