Вверх ↑
Ответов: 9906
Рейтинг: 351
#1: 2015-01-20 08:34:55 ЛС | профиль | цитата
В принципе, это делается примерно так:
Add(MainForm,8334998,567,70)
{
Width=318
Height=364
Caption="Управление элементами окна"
Point(onKeyDown)
Point(Handle)
link(onCreate,1165461:doFind,[])
}
Add(Memo,9721830,819,343)
{
Left=20
Top=225
Width=260
Height=85
ScrollBars=2
}
Add(FindWindow,1165461,623,84)
{
ClassName="obj_Form"
Caption="Управление элементами окна"
link(onFind,3653999:doFindChild,[])
}
Add(FindWindow,15939415,679,343)
{
ClassName="obj_COMBOBOX"
SkipParam=1
link(onFind,14481733:doSendMessage,[])
link(ParentHandle,16018623:Var,[])
}
Add(SendMessage,14481733,749,343)
{
Point(Message)
link(onSend,9721830:doAdd,[])
link(Handle,1381670:Var,[(755,334)(741,334)(741,411)(685,411)])
link(WParam,11491058:Text,[])
link(LParam,7728158:Var,[(769,306)(629,306)])
link(Message,9697802:Var,[])
}
Add(DoData,6923920,469,308)
{
link(onEventData,8878466:doEvent1,[])
link(Data,6225669:Text,[])
}
Add(Button,12440954,413,308)
{
Left=20
Top=175
Width=260
Caption="Отправить сообщение"
link(onClick,6923920:doData,[])
}
Add(IntegerArray,9153682,770,133)
{
IntArray=['CB_ADDSTRING'=323,'CB_DELETESTRING'=324,'CB_DIR'=325,'CB_FINDSTRING'=332,'CB_FINDSTRINGEXACT'=344,'CB_GETCOUNT'=326,'CB_GETCURSEL'=327,'CB_GETDROPPEDCONTROLRECT'=338,'CB_GETDROPPEDSTATE'=343,'CB_GETDROPPEDWIDTH'=351,'CB_GETEDITSEL'=320,'CB_GETEXTENDEDUI'=342,'CB_GETHORIZONTALEXTENT'=349,'CB_GETITEMDATA'=336,'CB_GETITEMHEIGHT'=340,'CB_GETLBTEXT'=328,'CB_GETLBTEXTLEN'=329,'CB_GETLOCALE'=346,'CB_GETTOPINDEX'=347,'CB_INITSTORAGE'=353,'CB_INSERTSTRING'=330,'CB_LIMITTEXT'=321,'CB_MSGMAX'=354,'CB_RESETCONTENT'=331,'CB_SELECTSTRING'=333,'CB_SETCURSEL'=334,'CB_SETDROPPEDWIDTH'=352,'CB_SETEDITSEL'=322,'CB_SETEXTENDEDUI'=341,'CB_SETHORIZONTALEXTENT'=350,'CB_SETITEMDATA'=337,'CB_SETITEMHEIGHT'=339,'CB_SETLOCALE'=345,'CB_SETTOPINDEX'=348,'CB_SHOWDROPDOWN'=335]
UseName=0
}
Add(ArrayRW,10336840,770,182)
{
link(Array,9153682:Array,[])
}
Add(Label,9341551,819,77)
{
Left=20
Top=90
Width=65
Height=17
Caption="Сообщение:"
}
Add(Label,15718932,868,77)
{
Left=20
Top=120
Width=41
Height=17
Caption="String"
}
Add(Label,5683312,917,77)
{
Left=195
Top=120
Width=60
Height=17
Caption="WParam"
}
Add(Edit,6225669,469,245)
{
Left=20
Top=140
Width=165
Text="Пункт2"
}
Add(Edit,11491058,756,245)
{
Left=190
Top=140
Width=65
Text="0"
DataType=2
}
Add(Label,8465279,966,77)
{
Left=20
Top=205
Width=37
Height=17
Caption="Ответ:"
}
Add(ChildPanel,6140200,770,77)
{
}
BEGIN_SDK
Add(EditMulti,1666175,21,21)
{
}
Add(Panel,12487912,49,70)
{
Left=20
Top=10
Width=262
Height=69
}
Add(ComboBox,13277300,105,126)
{
Left=150
Top=20
Width=95
Height=24
Strings=#6:Пункт1|6:Пункт2|6:Пункт3|
Text=""
}
Add(Label,12146243,105,70)
{
Left=10
Top=25
Width=136
Height=17
Caption="Объект для опытов:"
}
END_SDK
Add(FindWindow,3653999,679,77)
{
ClassName="obj_STATIC"
SkipParam=1
link(ParentHandle,12424888:Var,[(685,68)(671,68)(671,152)(629,152)])
}
Add(ComboBox,4188647,714,175)
{
Left=90
Top=90
Width=190
Height=21
Strings=#12:CB_ADDSTRING|16:CB_DELETESTRING |6:CB_DIR|14:CB_FINDSTRING |19:CB_FINDSTRINGEXACT |11:CB_GETCOUNT|12:CB_GETCURSEL|25:CB_GETDROPPEDCONTROLRECT |19:CB_GETDROPPEDSTATE |19:CB_GETDROPPEDWIDTH |13:CB_GETEDITSEL|16:CB_GETEXTENDEDUI|23:CB_GETHORIZONTALEXTENT |14:CB_GETITEMDATA|17:CB_GETITEMHEIGHT |12:CB_GETLBTEXT|16:CB_GETLBTEXTLEN |12:CB_GETLOCALE|14:CB_GETTOPINDEX|14:CB_INITSTORAGE|15:CB_INSERTSTRING|12:CB_LIMITTEXT|10:CB_MSGMAX |16:CB_RESETCONTENT |15:CB_SELECTSTRING|12:CB_SETCURSEL|19:CB_SETDROPPEDWIDTH |14:CB_SETEDITSEL |16:CB_SETEXTENDEDUI|23:CB_SETHORIZONTALEXTENT |14:CB_SETITEMDATA|16:CB_SETITEMHEIGHT|12:CB_SETLOCALE|14:CB_SETTOPINDEX|15:CB_SHOWDROPDOWN|
Text="не выбрано"
link(onClick,10336840:doRead,[])
}
Add(MemoryStream,9156883,609,245)
{
Point(Memory)
Point(doSize)
}
Add(DataToFile,14836274,609,315)
{
Type=6
link(Stream,9156883:Stream,[])
}
Add(Hub,8878466,518,308)
{
OutCount=3
link(onEvent1,4070461:doData,[(543,314)(543,265)])
link(onEvent2,14836274:doPut,[])
link(onEvent3,15939415:doFindChild,[(599,328)(599,356)])
}
Add(DoData,4070461,553,259)
{
Data=Integer(0)
link(onEventData,9156883:doSize,[])
}
Add(Debug,1381670,679,392)
{
WEName=""
VDName="hnd0"
link(Data,15939415:Handle,[])
}
Add(Debug,9697802,770,287)
{
WEName=""
VDName="msg"
link(Data,10336840:Item,[])
}
Add(Debug,7728158,623,287)
{
WEName=""
VDName="Mem"
link(Data,9156883:Memory,[])
}
Add(Debug,12424888,623,133)
{
WEName=""
VDName="hnd2"
link(Data,1165461:Handle,[])
}
Add(Debug,16018623,679,196)
{
WEName=""
VDName="hnd1"
link(Data,3653999:Handle,[])
}

Есть замечания:

1) Научись сначала правильно искать окна.
obj_Form - это не только именно твоя форма, но и, к примеру - аплет.
obj_STATIC - это не только именно твоя панель, но и все Label этого уровня.

2) Можно было, выкладывая пример, хотя бы убедиться, что ты работаешь (или не знаешь как работать) с НУЖНЫМ хэндлом.
Сэкономил бы коллегам время, между прочим.

3) Это какой же идиот это переводил: "Указатель на пpефиксную стpоку, заканчивающуюся пустым символом"
Моего образования не хватает, чтобы связать это с оригиналом: "A pointer to the null-terminated string"
Никогда больше не работай с тем ресурсом, где ты добыл этот перевод...
карма: 9

1
Голосовали:NordWest