Вверх ↑
Этот топик читают: Гость
Ответов: 249
Рейтинг: 4
#1: 2021-11-19 22:23:18 ЛС | профиль | цитата
не выделяется элемент дерева правой кнопкой мыши, на TreeViewEx как не как возможно сделать а на TreeViewTrain не в какую не выходит.
help

Add(MainForm,16077975,357,252)
{
Width=283
Height=275
Position=1
link(onCreate,5130956:doFor,[])
}
Add(TreeViewTrain,1574694,168,252)
{
Width=128
Height=236
Align=5
Name="main"
IconsManager="icons"
CaptionIndex=1
ParentIDIndex=2
IconIndex=3
Point(onMouseMove)
Point(onMouseDown)
Point(onMouseUp)
Point(onKillFocus)
link(onClick,3695694:doWork2,[])
link(onMouseDown,14964192:doSelectNode,[(212,272)(212,300)(156,300)(156,328)])
link(onMouseUp,9459557:doEvent,[])
}
Add(MT_String,14150441,546,259)
{
Delimeter="|"
link(onResult,3105964:doAddNode,[])
}
Add(TVT_AddNode,3105964,602,259)
{
TreeView="main"
}
Add(For,5130956,420,266)
{
End=9
link(onEvent,14464302:doString,[])
}
Add(FormatStr,14464302,490,266)
{
Mask="%1|элемент|-1|0"
link(onFString,14150441:doMT,[])
link(Str1,5130956:Position,[(496,250)(461,250)(461,310)(426,310)])
}
Add(Message,15597218,301,280)
{
link(Message,5325720:Var3,[(307,268)(223,268)(223,306)])
}
Add(IndexToChanel,9459557,245,273)
{
link(onEvent2,15597218:doMessage,[])
}
Add(TVT_SelectNode,14964192,168,322)
{
TreeView="main"
link(ID,5325720:Var2,[])
}
Add(GetDataEx,5325720,168,301)
{
link(Data,1574694:Select,[])
}
Add(TreeViewEx,70342,245,441)
{
Left=128
Width=139
Height=236
Align=3
Strings=#1:1|1:2|1:3|1:4|1:5|1:6|1:7|1:8|1:9|
IconsState=[]
Icons=[]
Point(onMouseMove)
Point(onMouseDown)
Point(Index)
Point(onMouseUp)
Point(doSelect)
Point(ItemAtPos)
Point(doRename)
link(onClick,3695694:doWork3,[(347,454)])
link(onMouseDown,426030:doData,[(289,468)(289,496)(253,496)(253,524)])
link(onMouseUp,3357491:doEvent,[])
}
Add(Message,882485,378,476)
{
link(Message,12741512:reCalc,[])
}
Add(IndexToChanel,3357491,322,469)
{
link(onEvent2,882485:doMessage,[])
}
Add(HubEx,3695694,343,252)
{
link(onEvent,16077975:doCaption,[])
}
Add(MathParse,12741512,371,420)
{
MathStr="%1+1"
Point(reCalc)
link(X1,70342:Index,[(377,403)(301,403)(301,506)(265,506)])
}
Add(DoData,426030,266,518)
{
link(onEventData,70342:doSelect,[(310,524)(310,510)(234,510)(234,468)])
link(Data,70342:ItemAtPos,[])
}

карма: 1

0
Разработчик
Ответов: 26161
Рейтинг: 2127
#2: 2021-11-20 05:25:17 ЛС | профиль | цитата
В компоненте TreeViewTrain не предусмотрена точка ItеmAtPos. Раньше она никому не была нужна.
карма: 22

0
Ответов: 249
Рейтинг: 4
#3: 2021-11-20 10:32:23 ЛС | профиль | цитата
Беда

--- Добавлено в 2021-11-20 10:35:07

неужели не кто не интересовался этим за столько лет, с момента создания TreeViewTrain, или некто не использует контекстное меню.

Редактировалось 1 раз(а), последний 2021-11-20 10:35:07
карма: 1

0
Разработчик
Ответов: 26161
Рейтинг: 2127
#4: 2021-11-20 12:39:32 ЛС | профиль | цитата
ric писал(а):
Беда

Добавлю эту точку, в чем проблема.
карма: 22

1
Голосовали:ric
Ответов: 249
Рейтинг: 4
#5: 2021-11-20 13:28:23 ЛС | профиль | цитата
nesco писал(а):

Добавлю эту точку, в чем проблема.


Спасибо добрый человек
карма: 1

0
Разработчик
Ответов: 26161
Рейтинг: 2127
#6: 2021-11-20 15:36:47 ЛС | профиль | цитата
Вот, добавил, но еще и добавил точку DataAtPos, что позволяет осуществить трекинг данных. Пример в архиве, файлы добавишь в соответствующие папки с заменой -- *.pas -> code; *.ini -> conf.
Пока обновить SVN не могу, но файлы добавлены в список обновления.

Редактировалось 2 раз(а), последний 2021-11-20 15:37:38
карма: 22

0
файлы: 1hiTreeViewTrain_IDAtPos.zip [6.3KB] [395]
Ответов: 249
Рейтинг: 4
#7: 2021-11-20 17:49:26 ЛС | профиль | цитата
Спасибо за помощь, посмотрю.

--- Добавлено в 2021-11-20 18:23:38

Работает, еще раз Спасибо

Редактировалось 1 раз(а), последний 2021-11-20 18:23:38
карма: 1

0
Ответов: 249
Рейтинг: 4
#8: 2021-11-22 10:58:31 ЛС | профиль | цитата
nesco писал(а):

А варианта с добавлением CheckBoxes как в TreeViewEx и добавлением компонента для проверки установленных флажков.
По желанию
карма: 1

0
Разработчик
Ответов: 26161
Рейтинг: 2127
#9: 2021-11-22 12:48:59 ЛС | профиль | цитата
Это не я разрабатывал компонент, поэтому пока ничего сказать про CheckBoxes не могу. Да и я как-то не планировал ничего глобального в этот компонент добавлять кроме мелочевки, типа точки на вывод ID.
карма: 22

0
Ответов: 249
Рейтинг: 4
#10: 2021-11-22 13:51:53 ЛС | профиль | цитата
Ок дело хозяйское
карма: 1

0
Разработчик
Ответов: 26161
Рейтинг: 2127
#11: 2021-11-22 16:48:32 ЛС | профиль | цитата
ric писал(а):
Ок дело хозяйское

Я еще попробую, но ничего гарантировать не буду. Есть некоторые трудности с текущей реализацией. А вот в плане правого клика еще будет обновление.
карма: 22

0
Разработчик
Ответов: 26161
Рейтинг: 2127
#12: 2021-11-23 12:47:24 ЛС | профиль | цитата
Вот, добавлены чекбоксы и свойство RightClickSelect, позволяющее правой кнопкой выбирать дерево так же как и левой без всяких доп. компонентов. Пример по чекбоксам в архиве. Никаких добавочных компонентов введено не было, все реализовано на текущем наборе.

Редактировалось 1 раз(а), последний 2021-11-23 12:49:00
карма: 22

0
файлы: 1hiTreeViewTrain_CheckBoxes.zip [8.2KB] [333]
Ответов: 249
Рейтинг: 4
#13: 2021-11-23 18:01:04 ЛС | профиль | цитата
nesco писал(а):
Вот, добавлены чекбоксы и свойство RightClickSelect, позволяющее правой кнопкой выбирать дерево так же как и левой без всяких доп. компонентов. Пример по чекбоксам в архиве. Никаких добавочных компонентов введено не было, все реализовано на текущем наборе.

Отлично, все работает как часы, Благодарю за обновление TreeViewTrain спасибо
карма: 1

0
Ответов: 249
Рейтинг: 4
#14: 2021-11-24 09:46:45 ЛС | профиль | цитата
Индекс иконки не работает загружается всегда нулевой индекс,с отключенным CheckBoxes все иконки подаются под своими индексами.
Add(MainForm,16077975,413,308)
{
Width=614
Height=275
Position=1
Point(Close)
Point(onClose)
link(onCreate,5765026:doEvent1,[])
link(onClose,9333306:In,[(453,335)(453,349)])
}
Add(TreeViewTrain,1574694,273,168)
{
Width=264
Height=236
Align=1
Name="main"
RightClickSelect=0
IconsManager="ico"
CheckBoxes=0
ParentIDIndex=2
IDIndex=1
IconIndex=4
CheckBoxIndex=3
Point(onMouseMove)
Point(onMouseDown)
Point(onMouseUp)
Point(onKillFocus)
Point(IDAtPos)
Point(DataAtPos)
Point(onDrop)
Point(doSetFocus)
Point(doExpand)
link(onClick,3525250:doAdd,[(312,174)(312,314)])
link(onMouseMove,15104246:doWork2,[])
link(onMouseUp,6621439:doEvent1,[])
}
Add(TVT_AddNode,3105964,791,322)
{
TreeView="main"
}
Add(MT_Add,3525250,364,308)
{
InputMT=2
link(onAdd,16077975:doCaption,[])
link(Data,1574694:IDAtPos,[(370,260)(286,260)])
}
Add(StrList,15705233,630,280)
{
Strings=#20:категория 1;1;-1;1;1|21:категория 2;2;-1;0;1 |13:sub 1;4;2;0;0|13:sub 2;5;2;0;0|13:sub 3;6;2;0;0|20:категория 3;3;-1;1;2|14:sub 1;7;3;-1;0|14:sub 2;8;3;-1;0|14:sub 3;9;3;-1;0|
}
Add(ArrayEnum,10500446,644,329)
{
link(onItem,11917214:doMT,[])
link(onEndEnum,14690065:doEvent1,[(684,342)(684,349)])
link(Array,15705233:Array,[])
}
Add(MT_String,11917214,742,322)
{
link(onResult,3105964:doAddNode,[])
}
Add(StatusBar,4001709,441,175)
{
}
Add(MT_Add,6362236,357,175)
{
InputMT=2
link(onAdd,13679980:doStr,[])
link(Data,1574694:DataAtPos,[(363,159)(265,159)(265,228)(293,228)])
}
Add(MT_String,13679980,399,175)
{
link(onResult,4001709:doText,[])
}
Add(ListBox,6092470,735,385)
{
Left=403
Width=195
Height=236
Align=3
}
Add(HubEx,15104246,343,175)
{
link(onEvent,6362236:doAdd,[])
}
Add(Hub,10989484,413,392)
{
InCount=3
OutCount=3
link(onEvent1,6092470:doClear,[])
link(onEvent2,5832158:doClear,[(536,405)(536,475)])
link(onEvent3,3715868:doEnum,[(438,412)(438,433)])
}
Add(TVT_EnumNodes,3715868,448,427)
{
TreeView="main"
link(onEnum,6764472:doEvent1,[])
}
Add(Hub,6621439,322,189)
{
link(onEvent1,15104246:doWork3,[(347,195)])
link(onEvent2,10989484:doEvent2,[(354,202)(354,405)])
}
Add(FormatStr,3144293,686,427)
{
DataCount=4
Mask="%4 - %1"
link(onFString,6092470:doAdd,[(725,433)(725,391)])
}
Add(Hub,14690065,693,343)
{
link(onEvent1,10989484:doEvent1,[(729,349)(729,370)(401,370)(401,398)])
link(onEvent2,1574694:doExpand,[(720,356)(720,383)(261,383)(261,188)])
}
Add(Button,5700868,686,637)
{
Left=275
Top=5
Width=115
TabOrder=-1
Caption="SelectAll"
link(onClick,3247309:doEvent1,[])
}
Add(Button,8767860,686,595)
{
Left=275
Top=30
Width=115
TabOrder=-1
Caption="UnSelectAll"
link(onClick,15091457:doEvent1,[])
}
Add(Hub,6764472,560,427)
{
link(onEvent1,3144293:doString,[])
link(onEvent2,16696142:doAdd,[(585,440)(585,552)])
}
Add(MT_MTArray,5832158,686,469)
{
}
Add(MT_MTArrayRW,16696142,686,532)
{
Point(Count)
link(Array,15014427:Var2,[])
}
Add(TVT_ChangeNode,7398894,1057,602)
{
TreeView="main"
link(onChangeNode,14083801:doEvent1,[(1096,608)(1096,678)(221,678)(221,405)])
}
Add(MT_MTArrayEnum,6108925,784,602)
{
link(onItem,9272621:doValue,[])
link(Array,15014427:Var3,[(790,516)])
}
Add(GetDataEx,15014427,686,511)
{
link(Data,5832158:Array,[])
}
Add(If_else,670867,896,602)
{
Type=3
Op1=Integer(0)
link(onTrue,4060956:doValue,[])
link(onFalse,4060956:doClear,[])
link(Op2,9272621:Value4,[(909,593)(888,593)(888,642)(874,642)])
}
Add(MT_MultiMem,9272621,847,602)
{
Count=4
link(onData,670867:doCompare,[])
}
Add(MT_AddData,3471026,994,602)
{
Count=3
InputMT=1
link(onAdd,7398894:doChangeNode,[])
link(Data1,9272621:Value1,[(1000,586)(839,586)(839,642)(853,642)])
link(Data2,9272621:Value2,[(1007,586)(1042,586)(1042,668)(860,668)])
link(Data3,9272621:Value3,[(1014,593)(1035,593)(1035,659)(867,659)])
}
Add(Switch,11739388,945,539)
{
DataOn=Integer(1)
DataOff=Integer(0)
Point(State)
Point(doOn)
}
Add(Memory,4060956,945,602)
{
Default=Integer(-1)
Point(Data)
link(onData,3471026:doAdd,[])
link(Data,11739388:State,[])
}
Add(Hub,15091457,742,595)
{
link(onEvent1,11739388:doReset,[(767,601)(767,552)])
link(onEvent2,5622129:doWork2,[])
}
Add(Hub,3247309,742,637)
{
link(onEvent1,11739388:doOn,[(823,643)(823,559)])
link(onEvent2,5622129:doWork3,[(767,650)])
}
Add(HubEx,5622129,763,602)
{
link(onEvent,6108925:doEnum,[])
}
Add(Hub,14083801,231,399)
{
link(onEvent1,1574694:doSetFocus,[(256,405)(256,181)])
link(onEvent2,10989484:doEvent3,[])
}
Add(Timer,12035853,595,329)
{
@Hint=#17:Таймер обязателен|
Interval=0
Enable=1
AutoStop=1
link(onTimer,10500446:doEnum,[])
AddHint(-67,51,116,13,@Hint)
}
Add(IconsManager,7094788,609,133)
{
Name="ico"
Icons=['Icon'=[ZIP5E07000078DACD934112C2200C453FD3053770BA74E9B2C7F0581C8D837810174ED3503462118AC08C4D13164CF2FA7F3A05143FE30877E2AA8113800B175F6182BF7771D638465014BD3815284A4405675792BDD94CCA780B2784B4737C4FE86E739670A4214328D94FAC4D08F2A23A4E38D2C2898D977078D2E7DB575ACFAB779BBF724AF43C51B59CDDA5E53929A7E2F72BC700922D7ACCBA44CEEE9CFFFAEAF2BD8E13346BD063E052A0BB8293693E4A5595C5B0FE430B04F81071],'Icon'=[ZIP5E07000078DAED94210F825014858F4983D9919CD168331AF5FFD82CCC64B3D96C369BCD860EC7AC069A9B3AFF80240C6CF880BD797DDC870F6771F3F05DC6BB070E77EC0DA0220ECB4272C6A00A3400B44589163AC8FA895A55FC952A962AB836CCF9D8FD5ECEF195BC65229F92BED1E7ACE2793C099DDCE328C85143B81C18E438125DDF31F82C6B82320FD3D7CFB322E4EF642C4DCE92C0EEE7A5D97E5E10A077DF6A4E28EB52CD08655D455389AECFBA794D24BA3EEBB21A4B940EB5C66651230EE496261A127EF84FFEAC5D1FF1294C2B6ADAB8D7BB08365D5CB7A22E315C37847B10B5E9C30DC4FA96D5F59C55B017CFD46C44BD67E6036D86ED08],'Icon'=[ZIP5E07000078DAD5956B4C536718C70F59321293393687435D16B35B302EB864D308BAB8647371CB0C1765C864385C3670A0D862B8295AA0DC61DCD44D708E4926024245A00C1D2A2A0814E805A5EDB99F52289C9E5BDB538AD907F79E035B8C64DFF6617BFB7B9F3CE739FFFEDEF7DB81203FF00B0A82A40AEDF287A0D5100405830D46D03BD0E25C5AEBFDA1FFC33A999E969E9A9C9E9AB29C0C99F47F26E3688AF2484A6D4DCDF9B8B0EAC84D5511214F13BEAC59466578C899A84D87DEDF90792CED76C5E107F77B8C035A894109C3A076E911704F6BBAF7C4E340F76266B1370C681FDEB8A48EDB95A954DCF9B512F32DC0BC07E13DB08C5506E60444F022146C1BEBB099FB61DE6DE5C0D0050B222C2C2561CE4DCC5205C95F662A9503974A508FD732C75A690E00D39C658E3399F4F6D1F6BE3BBA9D5F77472734587AEB2D38A61FBC65D777A33376EB1C6F057919DC41164A1EC5FDA6524CF481BFC34E1EA679C4C95FE8B67C72F04A5D71EDE5BAD321F9A35BD503BDB5D905AA9F22E21AAFFF523F6D9FB43A5DB07CA2D5C991B35471721CB88FAEB908F7FA509A030600C6B0B94D862D65639BBFEDDCA9D4C41BC5987EFAC3033FBF9DAC7D25575774A689A686119A95C29287A7E6C89294FD990AC5587311214A1ECCC9A38C7B586F3C373899833F8ABFE9F8AC194DD08B9F0FBBB637983FBA3EB375C89DD5DA63EA3C6BC7C651C6053CA893B7CD916587BF00F7196D019E0520C1590171705129D7DF4BBC7164C49566799434317F60DC1333C4478C899F8EF2DB7A66DE88ED8A4D68301B4710C60D24A853B0D164B9ECD1B71690E03E4E9E60052BCD27B5C031AD689A51FCCEE4CD9B14CEF5F4C765176F2EED7BB7090DD1106F55E93F2EBEF970428FCA1ECC294CD164C511E05118AFA8497101973D282B9CB7FB54E41F59D68544A3F7B769776F67576C54E4C643D5C18DC446AD3DF8D65CF45DEA817D1A6304C9C308769AF83E3516DCC7D8A6A6BC0B04237980EDAEC3FDA39E4DED67BE3188BFCFB87BBBB4B17BA2B6975EFC40E709EBA2F2FB4634388DB12E9C1170860775DA49541E051E85A94D4DFEED61789215DA6FE3F18DE84183B76FDAD5D3D9BD2F2A7247C5C51DC6F9B036C4A01FB6731C484A3CE1C9522A26AFE6525E1F291B4846205997D121D4219E32581C25C8EAB2A26DA1A119B567B3106F9689B1D0520C48E430389A9F6588D3CA7DC0035F53D9BC3E8AE12956C2C6F2532C4F301C068E434C753525E111113DBDDD36CF3CC84CC919390C3CD2C56619ECB43246F2749CB4893E8AF7D8048028555E941BD1C6F3D629627CC248314EBB7B5E9E78965E49310FC9791C34F2C3B1E8EC34C558CDEEA16BB52357CB463ACA751DE5A0825E2757A9015553BAF8767132A229070C4BB54CA72937B417D6268566A72BB45F3DDB16EDD7BAF7695A961AA8652FB4348C96869AFD2B3AE257B6C7FA5F8D5B511FF35A53C29BA57B0255C73386142B4D27D69973D6987382CC278240B52CF6D2E36AF389C0C9E381E6E3AB26B35F3067BFF8302B002FD960ABDA82146FC0ABC2CEAB0E5FCE4FBE90287D0B1C0DBBB1C2D789A2F5847A2D91FFB2446E2091B71A57AF21F2D612EA7538203F0857BD84AB5661A702B09CE7F093A03E8F9F0AC0F302F1C257FF9B1F8BC74B4B055AE85FD97E603FF397F6F19FD840E3D7]]
}
Add(TVT_SaveTree,4086203,812,280)
{
TreeView="main"
FileName="test.ini"
Delimiter="|"
}
Add(TVT_LoadTree,6550385,966,210)
{
TreeView="main"
FileName="test.ini"
Delimiter="|"
}
Add(Hub,5765026,462,322)
{
link(onEvent1,3452618:doExists,[(487,328)(487,265)])
link(onEvent2,14485369:doEvent,[])
}
Add(DirTools,3452618,763,238)
{
Point(doExists)
link(onOK,13237945:doCompare,[])
link(Source,12989511:GetData,[])
}
Add(If_else,13237945,812,238)
{
Op2=Integer(2)
link(onTrue,7056722:doEvent1,[])
link(onFalse,2443450:In,[])
}
Add(LineBreak,9239712,763,280)
{
link(Out,4086203:doSaveTree,[])
Primary=[9333306,-301,63]
}
Add(IndexToChanel,14485369,539,329)
{
Point(Index)
link(onEvent1,12035853:doTimer,[])
link(Index,5342286:Value,[])
}
Add(Memory,5342286,539,287)
{
Default=Integer(0)
}
Add(LineBreak,9565837,490,294)
{
link(Out,5342286:doClear,[])
Primary=[2443450,371,-49]
}
Add(Hub,7056722,896,238)
{
link(onEvent1,6550385:doLoadTree,[(920,244)(920,216)])
link(onEvent2,13501374:doData,[])
}
Add(DoData,13501374,924,245)
{
Data=Integer(1)
link(onEventData,14082290:In,[])
}
Add(LineBreak,15634889,490,287)
{
link(Out,5342286:doValue,[])
Primary=[14082290,476,-42]
}
Add(Dir,10227078,714,140)
{
}
Add(FormatStr,8603015,714,189)
{
Mask="%1test.ini"
link(onFString,12989511:doData,[])
link(Str1,10227078:CurrentDir,[])
}
Add(EventFromData,12989511,763,189)
{
link(onEvent,8603015:doString,[(807,195)(807,183)(702,183)(702,195)])
}



Редактировалось 1 раз(а), последний 2021-11-27 09:42:59
карма: 1

0
Ответов: 249
Рейтинг: 4
#15: 2021-11-27 09:46:25 ЛС | профиль | цитата
Nesco

Редактировалось 2 раз(а), последний 2021-11-27 09:48:19
карма: 1

0
Сообщение
...
Прикрепленные файлы
(файлы не залиты)