Вверх ↑
Этот топик читают: Гость
Ответов: 288
Рейтинг: 4
#1: 2010-01-28 22:24:41 ЛС | профиль | цитата
Народ, что нужно добавить в код чтобы элемент заработал.code_16691.txt
карма: 2

0
файлы: 1code_16691.txt [1.7KB] [156]
Разработчик
Ответов: 26155
Рейтинг: 2127
#2: 2010-01-28 22:32:16 ЛС | профиль | цитата
На вот, поправил, не вдаваясь в особенности работы компонента


Add(MainForm,4322833,217,217)
{
Width=403
Height=305
}
Add(Edit,16486014,266,217)
{
Left=55
Width=335
Text="ВВВАААССС"
}
Add(Button,12914289,217,266)
{
link(onClick,892564:doData,[])
}
Add(DoData,892564,266,266)
{
link(onEventData,6389307:doConvert,[])
link(Data,16486014:Text,[])
}
Add(RichEdit,14252179,390,266)
{
Top=20
Width=390
Height=250
ScrollBars=2
}
Add(InlineCode,6389307,322,266)
{
WorkPoints=#38:doConvert=Входящая не разбитая строка |
EventPoints=#34:onResult=Выходящая разбитая строка|
DataPoints=#4:Data|
Code=#15:unit HiAsmUnit;|0:|9:interface|0:|21:uses kol,Share,Debug;|0:|4:type|28: THiAsmClass = class(TDebug)|10: private|9: public|3: |18: Data:THI_Event;|22: onResult:THI_Event;|3: |62: procedure doConvert(var _Data:TData; Index:word);//StrToTri|5: end;|0:|14:implementation|71:procedure THiAsmClass.doConvert(var _Data:TData; Index:word);//StrToTri|17:var i: Integer;|23: m,f,s,str:string;|5:begin|33: str := ReadString(_Data,Data);|24: Replace(str, ' ','');|11: m := '';|11: f := '';|3:TRY|25: if str = '' then exit;|31: if (str[1] = '-') then begin|22: Delete(str,1,1);|29: if (str = '') then exit|21: else m := '- ';|8: end; |12: s := str;|27: for i:=1 to Length(s) do|30: if s[i] = '.' then begin|30: str := GetTok(s,'.');|22: f := '.' + s;|15: break;|10: end;|24: i := Length(str) - 2;|24: while i >= 2 do begin|48: if (str[1] = '-') and (i < 3) then break; |26: Insert(' ', str, i);|15: Dec(i,3);|7: end;|7:FINALLY|49: _hi_CreateEvent(_Data,@onResult, m + str + f);|4:END;|4:end;|4:end.|
link(onResult,14252179:doAdd,[])
}


Префиксы _work_, _event_, _data_, _var_ в классе THiAsmClass не нужны
карма: 22

0
Ответов: 288
Рейтинг: 4
#3: 2010-01-28 22:54:26 ЛС | профиль | цитата
nesco, а возмоно написать код, чтобы разбивало по 4 и по 2 символа.
А в место пробелов ставило (;).
Или это будет сильно напряжно для тебя.
карма: 2

0
Ответов: 4641
Рейтинг: 334
#4: 2010-01-28 22:54:58 ЛС | профиль | цитата
Sova-Kmv писал(а):
чтобы элемент заработал

ты учишься как компоненты делать или решения не нашел?
если не нашел то вот
code_16696.txt
карма: 1
Время верстки: %cr_time% Текущее время: %time%
0
файлы: 1code_16696.txt [423B] [152]
Ответов: 3851
Рейтинг: 159
#5: 2010-01-28 23:00:59 ЛС | профиль | цитата
Sova-Kmv, Помочь сделать прогу п.3
карма: 0
начавший
0
Ответов: 288
Рейтинг: 4
#6: 2010-01-28 23:11:31 ЛС | профиль | цитата
nesco, по 2 у меня получилосьcode_16697.txt
------------ Дoбавленo в 23.22:
По 4 тоже

Add(Edit,16486014,231,112)
{
Left=55
Width=335
Text="SSDDLLVVSSDDLLVV"
}
Add(Button,12914289,182,161)
{
link(onClick,892564:doData,[])
}
Add(DoData,892564,231,161)
{
link(onEventData,6389307:doConvert,[])
link(Data,16486014:Text,[])
}
Add(RichEdit,14252179,355,161)
{
Top=20
Width=390
Height=250
ScrollBars=2
}
Add(InlineCode,6389307,287,161)
{
WorkPoints=#38:doConvert=Входящая не разбитая строка |
EventPoints=#34:onResult=Выходящая разбитая строка|
Code=#15:unit HiAsmUnit;|0:|9:interface|0:|21:uses kol,Share,Debug;|0:|4:type|28: THiAsmClass = class(TDebug)|10: private|9: public|3: |18: Data:THI_Event;|22: onResult:THI_Event;|3: |62: procedure doConvert(var _Data:TData; Index:word);//StrToTri|5: end;|0:|14:implementation|71:procedure THiAsmClass.doConvert(var _Data:TData; Index:word);//StrToTri|17:var i: Integer;|23: m,f,s,str:string;|5:begin|33: str := ReadString(_Data,Data);|24: Replace(str, ' ','');|11: m := '';|11: f := '';|3:TRY|25: if str = '' then exit;|31: if (str[1] = '-') then begin|22: Delete(str,1,1);|29: if (str = '') then exit|21: else m := '- ';|8: end; |12: s := str;|27: for i:=1 to Length(s) do|30: if s[i] = '.' then begin|30: str := GetTok(s,'.');|22: f := '.' + s;|15: break;|10: end;|24: i := Length(str) - 3;|24: while i >= 2 do begin|48: if (str[1] = '-') and (i < 4) then break; |26: Insert(' ', str, i);|15: Dec(i,4);|7: end;|7:FINALLY|49: _hi_CreateEvent(_Data,@onResult, m + str + f);|4:END;|4:end;|4:end.|
link(onResult,14252179:doAdd,[])
}


Теперь попытаюс выполнить это всё в 1-м элементе.
карма: 2

0
файлы: 1code_16697.txt [1.6KB] [127]
Разработчик
Ответов: 26155
Рейтинг: 2127
#7: 2010-01-28 23:24:00 ЛС | профиль | цитата
Sova-Kmv, на, и не парься. Расчитано на любой промежуток и вставку любой строки между. Поля для ввода значений сам подставишь


Add(MainForm,4322833,252,217)
{
Width=403
Height=305
}
Add(Edit,16486014,294,217)
{
Left=55
Width=335
Text="ВВВАААССС"
}
Add(Button,12914289,252,266)
{
link(onClick,6389307:doConvert,[])
}
Add(RichEdit,14252179,397,266)
{
Top=20
Width=390
Height=250
ScrollBars=2
}
Add(InlineCode,6389307,329,266)
{
WorkPoints=#38:doConvert=Входящая не разбитая строка |
EventPoints=#34:onResult=Выходящая разбитая строка|
DataPoints=#4:Data|5:Count|3:Str|
Code=#15:unit HiAsmUnit;|0:|9:interface|0:|21:uses kol,Share,Debug;|0:|4:type|28: THiAsmClass = class(TDebug)|10: private|9: public|0:|18: Data:THI_Event;|19: Count:THI_Event;|17: Str:THI_Event;|22: onResult:THI_Event;|3: |52: procedure doConvert(var _Data:TData; Index:word);|5: end;|0:|14:implementation|61:procedure THiAsmClass.doConvert(var _Data:TData; Index:word);|20:var i, l: Integer;|21: txt, st:string;|18: cnt:integer;|5:begin|35: txt := ReadString(_Data, Data);|34: st := ReadString(_Data, Str);|37: cnt := ReadInteger(_Data, Count);|24: Replace(txt, ,');|3:TRY|20: l := Length(txt);|25: if l <= cnt then exit;|16: i := cnt + 1;|24: while i <= l do begin|25: Insert(st, txt, i);|25: Inc(l, Length(st));|31: Inc(i, cnt + Length(st));|7: end;|7:FINALLY|42: _hi_CreateEvent(_Data, @onResult, txt);|4:END;|4:end;|4:end.|
link(onResult,14252179:doAdd,[])
link(Data,16486014:Text,[(335,258)(300,258)])
link(Count,12713029:Value,[])
link(Str,2366746:Value,[(349,258)(384,258)])
}
Add(Memory,12713029,336,217)
{
Default=Integer(2)
}
Add(Memory,2366746,378,217)
{
Default=String(;=-)
}
карма: 22

0
Ответов: 288
Рейтинг: 4
#8: 2010-01-29 00:01:51 ЛС | профиль | цитата
nesco, а у меня-то тоже получилось! Вот только интересно всё там правильно или нет? nesco, может взглянеш одним глазком?code_16698.txtRavilr, Андрей., зря вы так.
карма: 2

0
файлы: 1code_16698.txt [2.9KB] [136]
Разработчик
Ответов: 26155
Рейтинг: 2127
#9: 2010-01-29 00:16:08 ЛС | профиль | цитата
Sova-Kmv писал(а):
а у меня-то тоже получилось!

Получилось, только ты его не оптимизировал, как я это сделал, там большая часть вообще не нужна. Да и получилось только на 2 и 4, а в моей схеме, хоть на один, хоть на ...дцать, если длина строки позволяет, да и вставить можно что угодно
карма: 22

0
Ответов: 288
Рейтинг: 4
#10: 2010-01-29 00:40:35 ЛС | профиль | цитата
Понял, благодарю!
карма: 2

0
Разработчик
Ответов: 26155
Рейтинг: 2127
#11: 2010-01-29 00:48:15 ЛС | профиль | цитата
Кстати, я свою схему подкорректировал, можешь обновить, если, конечно, нужно

карма: 22

0
Ответов: 4641
Рейтинг: 334
#12: 2010-01-29 10:28:08 ЛС | профиль | цитата
Sova-Kmv писал(а):
Ravilr, Андрей., зря вы так.

а я то при чем?
Я хотел узнать что ты делаешь.
Может расскажешь где это можно применить ?
Или как я уже писал... ты IC изучаешь.?

карма: 1
Время верстки: %cr_time% Текущее время: %time%
0
Ответов: 288
Рейтинг: 4
#13: 2010-03-04 23:22:03 ЛС | профиль | цитата
Кстати, я свою схему подкорректировал, можешь обновить, если, конечно, нужно
. nesco, а какой элемент обновлять?
карма: 2

0
Ответов: 16884
Рейтинг: 1239
#14: 2010-03-05 00:25:49 ЛС | профиль | цитата
nesco писал(а):
Кстати, я свою схему подкорректировал
мог бы еще символов на ~30 сократить.
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Разработчик
Ответов: 26155
Рейтинг: 2127
#15: 2010-03-05 00:37:04 ЛС | профиль | цитата
Sova-Kmv писал(а):
а какой элемент обновлять?

А я, разве, говорил, что буду делать компонент, там о последней схеме речь была

Tad писал(а):
мог бы еще символов на ~30 сократить

Что уж там сокращать-то, в последней схеме, я, вроде, там все ненужное выкинул
карма: 22

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