Вверх ↑
Этот топик читают: Гость
Разработчик
Ответов: 26161
Рейтинг: 2127
#46: 2012-03-30 17:00:38 ЛС | профиль | цитата
Добавил прямое управление выходами минуя список
------------ Дoбавленo в 17.00:
Добавил возможность не вызывать срабатывания выхода в режиме Integer при передаче в качестве параметра пробела, а не цифры
карма: 22

0
Ответов: 16884
Рейтинг: 1239
#47: 2012-03-30 17:01:04 ЛС | профиль | цитата
nesco,
а вот такая структура
#pas
procedure THiAsmClass.setOut;
// или функция
begin
// здесь парсим rString и выводим на левые точки
end;

Procedure THiAsmClass.InexInList;
Begin
ind:=toInteger(_Data);
// rString:= читаем из листа параметров;
SetOut;
End;
Procedure THiAsmClass.IndexInData;
Begin
ind:=toInteger(_Data);
// rString:= читаем из верхней точки
SetOut;
End;
Procedure THiAsmClass.onInput;
Begin
rString:=toString(_Data); // читаем строку со входа
SetOut;
End;
Если по честному, то вот эта строка, на все случаи жизни, уже задолбала
#pas
ReadXXXXX(_Data, _data_Parameters, _prop_Parameters);
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Разработчик
Ответов: 26161
Рейтинг: 2127
#48: 2012-03-30 17:34:16 ЛС | профиль | цитата
Tad писал(а):
то вот эта строка, на все случаи жизни, уже задолбала

В твоем случае уже не применишь VisualText без дополнительного компонента. Меня, к примеру, не устрамвает подача данных всегда из потока. Часто бывают случаи, когда надо порописать параметы на постой. Да и чем тебя ReadXXXX не устраивает
карма: 22

0
Ответов: 16884
Рейтинг: 1239
#49: 2012-03-30 17:50:40 ЛС | профиль | цитата
Приоритетами.
nesco писал(а):
Меня, к примеру, не устрамвает подача данных всегда из потока.
А я и не подаю всегда из потока.
Я должен сам выбрать откуда брать данные - или со входа, или с верхней точки, или из свойств. Т.е. должно быть:
для компонентов с верхней точкой и свойством - три точки для doWorkВход,doWorkВерхняя и doWorkСвойство ,
для компонентов без свойств doWorkВход,doWorkВерхняя
только один компонент сравнительно правильно устроен - Memory (и то почемуто возврат к значению, определённому в свойствах, не иначе, как с перепугу назвали doClear )
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Разработчик
Ответов: 26161
Рейтинг: 2127
#50: 2012-03-30 18:02:07 ЛС | профиль | цитата
Tad писал(а):
только один компонент сравнительно правильно устроен - Memory

Че ты говоришь, а это что


procedure THIMemory._work_doValue;
begin
FData := ReadData(_Data,_data_Data);
_hi_CreateEvent(_Data,@_event_onData,FData);
end;

не чтение с верхней точки
------------ Дoбавленo в 17.56:
Tad писал(а):
три точки для doWorkВход,doWorkВерхняя и doWorkСвойство

Солить их, что ли
------------ Дoбавленo в 17.58:
Tad писал(а):
Я должен сам выбрать откуда брать данные

Это всю концепцию менять надо было раньше, не от хорошей же жизни придумали метод ReadXXXX
------------ Дoбавленo в 18.02:
Tad, если по компоненту были конструктивные предложения, то дальше пошел уже беспредметный разговор ни о чем
карма: 22

0
Ответов: 16884
Рейтинг: 1239
#51: 2012-03-30 18:17:52 ЛС | профиль | цитата
nesco писал(а):
Солить их, что ли
Не солить, а дать возможность выбора, составляющему схему.
nesco, про верхнюю точку забыл
Значит и в этом компоненте должно быть три левых точки:
Запомнить со входа
Запомнить с верхней
Вернуться к Default
И на 33% увеличилась функциональность.
А входы открывать только нужные.


Это у "Обожаю HiAsm" очки розовые. Через розовые очки все девки - кровь с молоком, а снял - и смотреть не на что.
------------ Дoбавленo в 18.15:
nesco писал(а):
не от хорошей же жизни придумали метод ReadXXXX
nesco, ты создаёшь новый компонент. Кто тебе не даёт подойти к нему с другой стороны ?
Может тогда не только всем, а и Tad-у что-то понравится ?
Вот если бы папа Карло перевернул полено, то Буратино бы цены небыло.
Я же тебя не заставляю переделывать старые компоненты.
------------ Дoбавленo в 18.17:
(потому и применяю IC - там я сам себе хозяин)
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Ответов: 1536
Рейтинг: 176
#52: 2012-03-30 18:21:03 ЛС | профиль | цитата
nesco писал(а):
Теперь появилась возможность выдавать пустую строку без наличия разделителя при одном выходе
Отрезать пустую строку, конечно просто, но если onSet-ов будет много, и каждый выход обрабатывать отдельно - просто картина Репина.

Add(MultiSetParam,9726328,315,224)
{
Parameters=#4:1234|4:один|3:два|3:три|6:четыре|
Char=" "
Count=4
OutType=1
link(Index,7902700:Position,[])
link(onSet1,11905319:doWork2,[])
link(onSet2,11715168:doWork2,[])
link(onSet3,9138061:doWork2,[])
link(onSet4,9138061:doWork3,[(368,251)])
}
Add(ListBox,4589667,399,224)
{
Left=100
Top=40
Width=210
Height=235
}
Add(HubEx,11905319,364,224)
{
link(onEvent,4589667:doAdd,[])
}
Add(HubEx,11715168,364,231)
{
Angle=3
link(onEvent,11905319:doWork3,[])
}
Add(Button,5675889,245,224)
{
Left=35
Top=45
link(onClick,9726328:doSet,[])
}
Add(HubEx,9138061,364,238)
{
Angle=3
link(onEvent,11715168:doWork3,[])
}
Add(UpDown,7902700,322,168)
{
Left=105
Top=15
Max=3
link(onPosition,2404076:doText,[])
}
Add(Label,2404076,378,168)
{
Left=130
Top=20
Caption="0"
}


карма: 1
Не так страшна ошибка, как опасность её не заметить.

0
Гость
Ответов: 17029
Рейтинг: 0
#53: 2012-03-30 18:45:22 правка | ЛС | профиль | цитата


Редактировалось 5 раз(а), последний 2021-06-22 14:52:15
карма: 0

0
Ответов: 1058
Рейтинг: 76
#54: 2012-03-30 18:52:27 ЛС | профиль | цитата
[offtop]
95x153x187x229.kubangsm.r писал(а):
ссылка в первом сообщении битая

А она уже и не нужна, компонент уже на SVN залит.[/offtop]
карма: 0

0
Разработчик
Ответов: 26161
Рейтинг: 2127
#55: 2012-03-30 19:01:59 ЛС | профиль | цитата
ser_davkin, а зачем там четыре выхода
------------ Дoбавленo в 19.00:
Вертикальные точки компонента -- это элементы горизонтальной строки параметров, для твоего случая надо делать так



Add(MainForm,2953706,161,126)
{
}
Add(MultiSetParam,9726328,231,182)
{
Parameters=#4:1234|4:один|3:два|3:три|6:четыре|
Char="|"
Count=1
OutType=1
link(Index,7902700:Position,[])
link(onSet1,4589667:doAdd,[])
}
Add(ListBox,4589667,315,182)
{
Left=100
Top=40
Width=210
Height=235
}
Add(Button,5675889,161,182)
{
Left=35
Top=45
link(onClick,9726328:doSet,[])
}
Add(UpDown,7902700,238,126)
{
Left=105
Top=15
Max=3
link(onPosition,2404076:doText,[])
}
Add(Label,2404076,294,126)
{
Left=130
Top=20
Caption="0"
}

------------ Дoбавленo в 19.01:
ser_davkin писал(а):
Отрезать пустую строку, конечно просто

И причем здесь отрезание пустой строки, когда именно вывода пустой строки при одном параметре (те полной совместимости со StrList-ом в таком режиме) я и добивался, специально для очистки внешних строковых переменных
карма: 22

0
Ответов: 1536
Рейтинг: 176
#56: 2012-03-30 19:05:01 ЛС | профиль | цитата

nesco, спасибо, теперь понял!
карма: 1
Не так страшна ошибка, как опасность её не заметить.

0
Ответов: 1304
Рейтинг: 405
#57: 2012-03-30 19:05:58 ЛС | профиль | цитата
MAV писал(а):
ссылка в первом сообщении битая

tom-it, особой необходимости в данном компоненте я не усмотрел так как компонент в различных комбинациях заменим двумя тремя стандартными, и уж тем более он мне не нужен для управления TabControl. Но в тоже время мня было интересно посмотреть на ошибки и решения при создании данного компонента.
карма: 3

0
Ответов: 704
Рейтинг: 44
#58: 2012-03-30 19:19:25 ЛС | профиль | цитата
MAV писал(а):
Но в тоже время мня было интересно посмотреть на ошибки и решения при создании данного компонента.
Ну и смысл смотреть ошибки когда все уже готова. Помоему Nesco описывал ошибки там можно посмотреть.
карма: 0

0
Разработчик
Ответов: 26161
Рейтинг: 2127
#59: 2012-03-30 19:20:38 ЛС | профиль | цитата
MAV писал(а):
в различных комбинациях заменим двумя тремя стандартными

Все зависит от количества выводимых параметров, может потребоваться далеко не два-три компонента
карма: 22

0
Ответов: 704
Рейтинг: 44
#60: 2012-03-30 19:25:41 ЛС | профиль | цитата
Что то Nesco я не могу компонент установить, Ini файл закинул в Hiasm компонент установился, запускаю программу, а она не хочет запускаться. Нажимаю просмотреть исходник компонента не открывает, зашел в Code посмотреть pas он на месте. В чем проблема не скажете?, может Hiasm откидывает в файл последние действие компонентов на дубликаты?Вроде и удалял уже компонент все тоже самое.
карма: 0

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