MAV, знаю, но это простейший выход, иначе потребуются еще элементы. Хотя можно и подумать.
------------ Дoбавленo в 00.47:
Вот немного поразмышлял. Первый кадрик так непроизвольно и сохраняется. Но если не нажать кнопку - разобрать и попытаться открыть новый файл или закрыть форму он будет удален. И только в случае нажатия - разобрать все файлики будут сохраненны.
Add(MainForm,2953706,103,392) { Width=316 Height=265 Color=15780518 Position=1 Point(onClose) link(onClose,8226872:doEvent2,[]) } Add(Gif,7607999,320,133) { DrawSource=2 AutoAnimation=1 Point(doNextFrame) Point(CurFrame) Point(FrameCount) Point(doPlay) Point(doStop) link(onLoad,15302656:doOperation,[(364,139)(364,55)]) link(onDraw,11833027:doEvent1,[]) } Add(Button,10230565,82,112) { Left=10 Top=205 Caption="открыть" link(onClick,5884097:doEvent1,[]) } Add(ODialog,6839189,173,119) { Filter="gif|*.gif" FileName="" link(onExecute,14654665:doEvent1,[]) } Add(Button,1085591,82,154) { Left=75 Top=205 Width=75 Caption="разобрать" link(onClick,7607999:doPlay,[]) } Add(Image,5654704,558,154) { Left=10 Top=25 Width=140 Height=175 Color=15780518 ViewStyle=0 Picture=[ZIP3609000078DAB594218CA4301486FF739C1B89BC7187C46C82454E7206391689ACC4CEBA9A4D2A6B49D6201127B04824128B44227B3F05F6C865668FDEEE917C79AFED7BFF6BE195F8C7D357D8E7897C27FECA177C5B16D6F5FD638CB9CB4FAE6DDC9B7F343EC22BE35FD79CBD7F647C04CD78BDE66CFE9FE37BB1477961FCCB839CFDDAE6BF177F54635B7BA6FFFCCEF8285BDEDF7205D7C53FE8BBE86D739F59E7237CE439AA2F5BF99B4E43F5C54A492AC8BE7E430D2D74573BE947324228436B2315BF11EB044921905637E45D05658685A177D2F7120FB8D099ED8E79DE8B179B54398AF98E11350E4EFA563B9E0FB2235CE7899F9D90F3DDDD860A622821DAC2497FCEF7B2F50C9B3639653E8222C6A5C920BA1CAABAA02A035445E4A47F292E16EFEA2DFA739D2B4BC8C06AEA3242A9CFE8A4874902833C39E95FEB146993C213CC4B3891F29B503FA7E5D6D1D2F6D90A2F569BFB4EFA21F7175421CED247A223F64D04C5FEE9D94F7D7E46C35A15BF4FCD7335AC5F676EFA9289B73A46515F3174378B19B5656A73F43A462302D42244C91A9A3DE5A26F663D7E3FC31761B841C30D2F24CBDC20195B63E2FD6AB54099C54EFA137BCF74842FC1B03F0CCF6378163B9E2DEFF2343616635A6B5DF447F6F3D49156D95AD6EFCA1D9A310BB33F34DA597FC92F2C73FE23C646A1AF95DBFDFD8FFFCFCFE4172749ABFD] Point(Handle) Point(doRefresh) } Add(Hub,11833027,369,140) { OutCount=4 link(onEvent1,2824546:doCompare,[(401,146)(401,111)]) link(onEvent2,11256556:In,[(408,153)(408,146)]) link(onEvent3,5654704:doLoad,[]) link(onEvent4,15281182:doSave,[(457,167)(457,230)]) } Add(FilePart,12959062,266,84) { link(onName,8053139:doValue,[]) } Add(Hub,14654665,222,119) { OutCount=3 link(onEvent1,12959062:doPart,[(250,125)(250,90)]) link(onEvent2,12068598:In,[(256,132)(256,125)]) link(onEvent3,7607999:doLoadFromFile,[]) } Add(FormatStr,4060178,215,266) { Mask="%1_%2.jpg" Point(FString) link(onFString,11463042:doEvent1,[]) link(Str1,15863032:getVar,[]) link(Str2,507390:Var,[(228,252)(259,252)]) } Add(If_else,2824546,446,105) { Op2=Integer(7) link(onTrue,13224847:In,[]) link(Op1,16499843:getVar,[(452,99)(421,99)]) link(Op2,15302656:Result,[]) } Add(Math,15302656,453,49) { OpType=1 Op2=1 link(Op1,11953487:getVar,[]) } Add(PictureStream,15281182,530,217) { link(FileName,10497624:getVar,[(536,210)(508,210)]) link(Bitmap,5654704:ImageBitmap,[(543,192)(564,192)]) } Add(ListBox,3264594,334,266) { Left=175 Top=25 Width=130 Height=175 Color=15780518 DataType=1 Point(Index) link(onClick,815881:doEvent1,[]) } Add(ImageLoader,13753547,558,273) { DrawSource=1 link(onLoad,13753547:doDraw,[(603,279)(603,261)(546,261)(546,286)]) link(Bitmap,5654704:Handle,[]) } Add(GlobalVar,8053139,309,91) { Name="name" } Add(GlobalVar,507390,253,224) { Name="name" } Add(LineBreakEx,11267335,320,189) { Caption="t" Type=3 link(_Data,7607999:CurFrame,[]) } Add(LineBreakEx,15863032,215,225) { Caption="t" Type=2 } Add(LineBreakEx,16499843,415,78) { Caption="t" Type=2 } Add(LineBreakEx,7151964,355,189) { Caption="k" Type=3 link(_Data,7607999:FrameCount,[(361,180)(333,180)]) } Add(LineBreakEx,11953487,453,22) { Caption="k" Type=2 } Add(LineBreak,6586246,264,161) { Caption="end" link(Out,7607999:doStop,[]) Primary=[13224847,224,-56] } Add(LineBreakEx,8896891,215,308) { Caption="f" Type=3 link(_Data,4060178:FString,[]) } Add(LineBreakEx,10497624,502,189) { Caption="f" Type=2 } Add(LineBreak,803954,173,266) { Caption="file" link(Out,4060178:doString,[]) Primary=[11256556,245,-126] } Add(LineBreak,15180004,292,273) { Caption="c" link(Out,3264594:doClear,[]) Primary=[12068598,-23,-154] } Add(Memory,15313484,355,343) { Point(Data) link(onData,5341602:doEvent1,[]) link(Data,3264594:Index,[]) } Add(Button,7719966,215,343) { Left=175 Top=205 Width=130 Caption="удалить как ненужный" link(onClick,15313484:doValue,[]) } Add(Label,7466416,131,28) { Left=200 Top=5 Width=81 Height=17 Color=15780518 Caption="список файлов" } Add(Label,4795058,89,28) { Left=40 Top=5 Width=81 Height=17 Color=15780518 Caption="gif для разбора" } Add(FileTools,822594,446,336) { link(onEnd,15881040:doEvent1,[(494,342)(494,167)]) link(FileName,2315033:Value,[]) } Add(Hub,5341602,404,343) { link(onEvent1,3264594:doDelete,[(430,349)(430,333)(325,333)(325,286)]) link(onEvent2,822594:doDelete,[]) } Add(Memory,2315033,446,273) { link(onData,13753547:doLoad,[]) } Add(Hub,15881040,523,161) { InCount=2 link(onEvent1,5654704:doClear,[]) link(onEvent2,5654704:doRefresh,[]) } Add(StyleXP,2340556,173,28) { } Add(Hub,815881,383,273) { link(onEvent1,2315033:doValue,[]) link(onEvent2,15881040:doEvent2,[(426,286)(426,174)]) } Add(If_else,11555392,341,406) { Op2=Integer(1) link(onTrue,6221281:doData,[]) link(Op1,3264594:Count,[]) } Add(Hub,5884097,131,112) { link(onEvent1,8226872:doEvent1,[(161,118)(161,412)]) link(onEvent2,6839189:doExecute,[]) } Add(Hub,11463042,264,266) { link(onEvent1,3264594:doAdd,[]) link(onEvent2,4584830:doValue,[(285,279)(285,251)]) } Add(GlobalVar,4584830,292,245) { Name="a" } Add(GlobalVar,13541806,390,383) { Name="a" } Add(DoData,6221281,390,406) { link(onEventData,13674002:doDelete,[(434,412)(434,426)]) link(Data,13541806:Var,[]) } Add(FileTools,13674002,446,406) { } Add(Hub,8226872,180,406) { InCount=2 OutCount=1 link(onEvent1,11555392:doCompare,[]) }
------------ Дoбавленo в 13.38:
Просмотрел ночное деяние и убрал лишнее. Сейчас файлы сохраняются как .png
Add(MainForm,2953706,45,392) { Width=319 Height=262 Color=15780518 Position=1 Point(onClose) link(onClose,8226872:doEvent2,[]) } Add(Gif,7607999,283,133) { DrawSource=2 AutoAnimation=1 Point(doNextFrame) Point(CurFrame) Point(FrameCount) Point(doPlay) Point(doStop) link(onLoad,15302656:doOperation,[(327,139)(327,55)]) link(onDraw,11833027:doEvent1,[]) } Add(Button,10230565,45,112) { Left=10 Top=205 Caption="открыть" link(onClick,5884097:doEvent1,[]) } Add(ODialog,6839189,136,119) { Filter="gif|*.gif" FileName="" link(onExecute,14654665:doEvent1,[]) } Add(Button,1085591,45,154) { Left=75 Top=205 Width=75 Caption="разобрать" link(onClick,7607999:doPlay,[]) } Add(Image,5654704,499,161) { Left=10 Top=25 Width=140 Height=175 Color=15780518 ViewStyle=0 Picture=[ZIP3609000078DAB594218CA4301486FF739C1B89BC7187C46C82454E7206391689ACC4CEBA9A4D2A6B49D6201127B04824128B44227B3F05F6C865668FDEEE917C79AFED7BFF6BE195F8C7D357D8E7897C27FECA177C5B16D6F5FD638CB9CB4FAE6DDC9B7F343EC22BE35FD79CBD7F647C04CD78BDE66CFE9FE37BB1477961FCCB839CFDDAE6BF177F54635B7BA6FFFCCEF8285BDEDF7205D7C53FE8BBE86D739F59E7237CE439AA2F5BF99B4E43F5C54A492AC8BE7E430D2D74573BE947324228436B2315BF11EB044921905637E45D05658685A177D2F7120FB8D099ED8E79DE8B179B54398AF98E11350E4EFA563B9E0FB2235CE7899F9D90F3DDDD860A622821DAC2497FCEF7B2F50C9B3639653E8222C6A5C920BA1CAABAA02A035445E4A47F292E16EFEA2DFA739D2B4BC8C06AEA3242A9CFE8A4874902833C39E95FEB146993C213CC4B3891F29B503FA7E5D6D1D2F6D90A2F569BFB4EFA21F7175421CED247A223F64D04C5FEE9D94F7D7E46C35A15BF4FCD7335AC5F676EFA9289B73A46515F3174378B19B5656A73F43A462302D42244C91A9A3DE5A26F663D7E3FC31761B841C30D2F24CBDC20195B63E2FD6AB54099C54EFA137BCF74842FC1B03F0CCF6378163B9E2DEFF2343616635A6B5DF447F6F3D49156D95AD6EFCA1D9A310BB33F34DA597FC92F2C73FE23C646A1AF95DBFDFD8FFFCFCFE4172749ABFD] Point(Handle) Point(doRefresh) } Add(Hub,11833027,332,140) { OutCount=5 link(onEvent1,2824546:doCompare,[(364,146)(364,111)]) link(onEvent2,11256556:In,[(371,153)(371,146)]) link(onEvent3,14555569:doLoad,[(442,160)(442,146)]) link(onEvent4,5654704:doLoad,[]) link(onEvent5,5896149:doCopy,[(417,174)(417,209)]) } Add(FilePart,12959062,229,84) { link(onName,8053139:doValue,[]) } Add(Hub,14654665,185,119) { OutCount=3 link(onEvent1,12959062:doPart,[(213,125)(213,90)]) link(onEvent2,12068598:In,[(219,132)(219,125)]) link(onEvent3,7607999:doLoadFromFile,[]) } Add(FormatStr,4060178,178,266) { Mask="%1_%2.png" Point(FString) link(onFString,3264594:doAdd,[]) link(Str1,15863032:getVar,[]) link(Str2,507390:Var,[(191,252)(222,252)]) } Add(If_else,2824546,416,105) { Op2=Integer(7) link(onTrue,13224847:In,[]) link(Op1,16499843:getVar,[(422,99)(391,99)]) link(Op2,15302656:Result,[]) } Add(Math,15302656,423,49) { OpType=1 Op2=1 link(Op1,11953487:getVar,[]) } Add(ListBox,3264594,297,266) { Left=175 Top=25 Width=130 Height=175 Color=15780518 DataType=1 Point(Index) link(onClick,815881:doEvent1,[]) } Add(ImageLoader,13753547,499,273) { DrawSource=1 link(onLoad,13753547:doDraw,[(544,279)(544,261)(487,261)(487,286)]) link(Bitmap,5654704:Handle,[]) } Add(GlobalVar,8053139,272,91) { Name="name" } Add(GlobalVar,507390,216,224) { Name="name" } Add(LineBreakEx,11267335,283,189) { Caption="t" Type=3 link(_Data,7607999:CurFrame,[]) } Add(LineBreakEx,15863032,178,225) { Caption="t" Type=2 } Add(LineBreakEx,16499843,385,78) { Caption="t" Type=2 } Add(LineBreakEx,7151964,318,189) { Caption="k" Type=3 link(_Data,7607999:FrameCount,[(324,180)(296,180)]) } Add(LineBreakEx,11953487,423,22) { Caption="k" Type=2 } Add(LineBreak,9060250,227,161) { Caption="end" link(Out,7607999:doStop,[]) Primary=[13224847,231,-56] } Add(LineBreakEx,8896891,178,308) { Caption="f" Type=3 link(_Data,4060178:FString,[]) } Add(LineBreak,11205490,136,266) { Caption="file" link(Out,4060178:doString,[]) Primary=[11256556,245,-126] } Add(LineBreak,5334238,241,273) { Caption="c" link(Out,3264594:doClear,[]) Primary=[12068598,-9,-154] } Add(Memory,15313484,318,343) { Point(Data) link(onData,5341602:doEvent1,[]) link(Data,3264594:Index,[]) } Add(Button,7719966,178,343) { Left=175 Top=205 Width=130 Caption="удалить как ненужный" link(onClick,15313484:doValue,[]) } Add(Label,7466416,94,35) { Left=200 Top=5 Width=81 Height=17 Color=15780518 Caption="список файлов" } Add(Label,4795058,52,35) { Left=40 Top=5 Width=81 Height=17 Color=15780518 Caption="gif для разбора" } Add(FileTools,822594,409,336) { link(onEnd,15881040:doEvent1,[(453,342)(453,174)]) link(FileName,2315033:Value,[]) } Add(Hub,5341602,367,343) { link(onEvent1,3264594:doDelete,[(392,349)(392,329)(288,329)(288,286)]) link(onEvent2,822594:doDelete,[]) } Add(Memory,2315033,409,273) { link(onData,13753547:doLoad,[]) } Add(Hub,15881040,472,168) { InCount=2 link(onEvent1,5654704:doClear,[]) link(onEvent2,5654704:doRefresh,[]) } Add(StyleXP,2340556,136,35) { } Add(Hub,815881,346,273) { link(onEvent1,2315033:doValue,[]) link(onEvent2,15881040:doEvent2,[(389,286)(389,181)]) } Add(If_else,11555392,304,406) { Op2=Integer(1) link(onTrue,6221281:doData,[]) link(Op1,3264594:Count,[]) } Add(Hub,5884097,94,112) { link(onEvent1,8226872:doEvent1,[(119,118)(119,412)]) link(onEvent2,6839189:doExecute,[]) } Add(DoData,6221281,353,406) { link(onEventData,13674002:doDelete,[(397,412)(397,426)]) link(Data,12693622:getVar,[]) } Add(FileTools,13674002,409,406) { } Add(Hub,8226872,143,406) { InCount=2 OutCount=1 link(onEvent1,11555392:doCompare,[]) } Add(LineBreakEx,12693622,353,378) { Caption="f" Type=2 } Add(Bitmap,14555569,547,140) { Point(Width) Point(Height) } Add(Img_Copy,5896149,533,203) { Point(Width) Point(Height) link(onCopy,9353092:doEvent1,[]) link(Source,14555569:Bitmap,[(539,187)(553,187)]) link(Width,14555569:Width,[]) link(Height,14555569:Height,[]) } Add(PNG,5190021,620,203) { Point(FileName) Point(doLoadFromBitmap) link(FileName,5372668:getVar,[]) } Add(Hub,9353092,585,203) { link(onEvent1,5190021:doLoadFromBitmap,[(608,209)(608,223)]) link(onEvent2,5190021:doSave,[]) } Add(LineBreakEx,5372668,620,175) { Caption="f" Type=2 }
|