nesco, вот как-то не логично работает вывод события onCheck у MTStrTb. Срабатывает и при смене флажка курсором на таблице и при смене состояния флажка другими элементами: MST_CheckBoxes, MST_RowAction при сдвиге строки.
Add(MainForm,10809136,259,154) { Width=907 Height=582 Position=1 Point(onKeyDown) link(onCreate,10041622:doEnum,[]) } Add(MTStrTbl,5133893,483,455) { Left=5 Top=5 Width=622 Height=433 Font=[MS Sans Serif,12,0,0,1] WinStyle=4 Name="testTable" Columns=#4:№=40|9:Фильм=200|9:Год=60==2|11:Жанр=200==2|12:Описание=300|0:| CheckBoxes=0 Grid=0 link(onCheck,6543734:doString,[]) } Add(StrList,15034837,301,112) { Strings=#49:1;Звездные войны;1980;фантастика;Фильм о войнах )|32:2;1+1;2003;комедия;Фильм о двух |39:3;Убить Билла;1990;боевик;Убивают Билла|53:4;Крепкий орешик 2;1999;боевик;Встретил жену с работы|52:5;Куб;1993;фантастика;Для любителей трехмерных фигур|48:6;Аватар;2004;фантастика;Управляют синими телами| } Add(MT_String,922736,364,154) { link(onResult,2904434:doRowAction,[]) } Add(ArrayEnum,10041622,315,168) { link(onItem,922736:doMTString,[]) link(onEndEnum,14792267:doData,[(354,181)(354,223)]) link(Array,15034837:Array,[]) } Add(MST_RowAction,2904434,406,154) { MSTControl="testTable" } Add(Button,4370717,441,280) { Left=340 Top=445 Width=90 Height=40 Font=[MS Sans Serif,12,0,0,1] Caption="Вверх" link(onClick,10277927:doRowAction,[]) } Add(Button,13202419,441,322) { Left=340 Top=495 Width=90 Height=40 Font=[MS Sans Serif,12,0,0,1] Caption="Вниз" link(onClick,2072383:doRowAction,[]) } Add(MST_RowAction,10277927,497,280) { Action=8 MSTControl="testTable" Point(Index) link(Index,12943451:Var2,[]) } Add(MST_RowAction,2072383,483,322) { Action=9 MSTControl="testTable" Point(Index) link(Index,12943451:Var1,[(489,264)]) } Add(MST_SelectRow,15300888,490,217) { MSTControl="testTable" } Add(DoData,14792267,364,217) { Data=Integer(2) link(onEventData,730855:doEvent1,[]) AddHint(-1,-20,21,13,Data) } Add(MST_CheckBoxes,9803949,483,385) { MSTControl="testTable" link(onCheckBox,7250149:doString,[]) } Add(Hub,730855,406,217) { link(onEvent1,15300888:doSelect,[]) link(onEvent2,14797827:doAdd,[(427,230)(427,391)]) } Add(MT_Add,14797827,441,385) { Data=Integer(1) link(onAdd,9803949:doCheckBox,[]) AddHint(0,-23,21,13,Data) } Add(GetDataEx,12943451,497,259) { link(Data,15300888:Index,[]) } Add(ListBox,1534508,588,469) { Left=635 Top=10 Width=225 Height=430 } Add(FormatStr,6543734,525,469) { Mask="MTStrTb [%1 %2]" link(onFString,10122469:doWork2,[]) } Add(FormatStr,7250149,525,385) { Mask="MST_CheckBoxes [%1 %2]" link(onFString,10122469:doWork1,[(571,391)]) } Add(HubEx,10122469,567,469) { link(onEvent,1534508:doAdd,[]) }
Почему бы не сделать так чтоб событие у MTStrTb выдавалось при смене флажка только при работе из таблицы, а все остальное блокировалось?
|