Вверх ↑
Этот топик читают: Гость
Ответов: 1376
Рейтинг: 197
#46: 2015-09-15 21:05:20 ЛС | профиль | цитата
Tad, поддерживаю направление (мимо проходил - неудержался и впрегся ), но тогда уж так
code_36276.txt
flint2, у нас ещё можно строку упаковать, потом сжать и превратить в тот же HEX - в итоге: пользуй строку(HEX) как хошь
карма: 1

0
файлы: 1code_36276.txt [1.5KB] [436]
Ответов: 2059
Рейтинг: 132
#47: 2015-09-15 21:38:09 ЛС | профиль | цитата
Tad,
ListBox исключить из обсуждения, как класс.
Он только с толку сбивает.
[flood]не сердись я сейчас агрессивен.
Не в своей летающей тарелке.[/flood]
Ребята Netspirit, nesco толково говорят.
Не спугнуть бы.
------------ Дoбавленo в 21.38:
foksovу,
у нас ещё можно строку...

наворотов много.
Как и ты
поддерживаю направление,

и я тоже.
карма: 6

0
Ответов: 16884
Рейтинг: 1239
#48: 2015-09-15 21:40:11 ЛС | профиль | цитата
foksov писал(а):
тогда уж так
Конечно так.
Блин! Забыл про StreamConvertor
И что там делают StrToHex и HexToStr - вообще без понятия.
Развелось конвенторов, как собак.
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Ответов: 1376
Рейтинг: 197
#49: 2015-09-15 21:43:39 ЛС | профиль | цитата
flint2 писал(а):
наворотов много.
нет особых наворотов, вот пример для картинок или любого типа (строку-то туда уложить зАпросто)
code_36277.txt
вроде не особо наворочено...
карма: 1

0
файлы: 1code_36277.txt [3.2KB] [403]
Ответов: 2059
Рейтинг: 132
#50: 2015-09-15 21:57:43 ЛС | профиль | цитата
foksov,
скажу близко к теме.
Давно хотел сделать просто список (можно с KOL, а можно и без).
И суй туда, чего не поподя - текст (понятие определилось ), картинки, кино и музыку.

Netspirit и nesco
Правильным путём идёте товарищи!
карма: 6

0
Разработчик
Ответов: 26151
Рейтинг: 2127
#51: 2015-09-15 22:28:58 ЛС | профиль | цитата
Родилась идея -- взять компонент Stack и на его основе сделать что-то типа DataList, и в нем можно будет хранить любые данные, доступные нам. С таким списком можно будет делать практически любые операции, доступные в StrList-е
карма: 22

0
Ответов: 16884
Рейтинг: 1239
#52: 2015-09-15 22:37:11 ЛС | профиль | цитата
flint2 писал(а):
Netspirit и nesco
Правильным путём идёте товарищи!

Это уже похоже на подъё.... Ой!
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Гость
Ответов: 17029
Рейтинг: 0
#53: 2015-09-15 22:40:00 правка | ЛС | профиль | цитата


Редактировалось 4 раз(а), последний 2022-09-20 01:30:28
карма: 0

0
Разработчик
Ответов: 26151
Рейтинг: 2127
#54: 2015-09-15 23:05:02 ЛС | профиль | цитата
46.165.8.34 писал(а):
ждём-с предложенного компонента на обсуждение.

Будет немного свободного времени, попробую сделать набросок.
карма: 22

0
Ответов: 2059
Рейтинг: 132
#55: 2015-09-15 23:05:10 ЛС | профиль | цитата
Родилась идея -- взять компонент Stack и на его основе сделать что-то типа DataList,

Давно пользую так, но...
А чего отдельно список не сделать, хотя бы на KOL. Там всё готовое есть, только оформить.
Могу заняться, потом покритикуете. Уверяю - будет весело.
Было бы совсем не кисло через точки указатели передавать.
Виноват, это невозможно (не к компоненту применительно). (почему будет вопрос?)
Хотя в некоторых компонентах можно добавить точки и новых - где это только нужно.
Типа точек цветовой ориентации.
[flood]голубые точки есть, есть белые, жёлтые, красные, зелёные, а чёрных нет - какой-то kkk[/flood]
[flood]
Это уже похоже на под.... ой!

Не понял, но всё равно согласен![/flood]
P.S.
Виноват
на его основе

не воспринял вовремя.

карма: 6

0
Разработчик
Ответов: 26151
Рейтинг: 2127
#56: 2015-09-16 02:38:15 ЛС | профиль | цитата
flint2 писал(а):
Было бы совсем не кисло через точки указатели передавать.

Ну передал, а дальше что? Кто их читать и использовать будет?

flint2 писал(а):
голубые точки есть, есть белые, жёлтые, красные, зелёные, а чёрных нет - какой-то kkk

Че серьезно? А кто мешает установить как душе угодно, для этого вроде есть -- Настройки -> Редактор -> Цвета
------------ Дoбавленo в 02.38:
flint2, я тут прикинул -- а почему не попытаться сделать вот так? Это набросок, без всяких причесываний, чисто показать концепт

Add(MainForm,2953706,147,175)
{
Width=605
Height=547
}
Add(MultiElementEx,14754905,357,245)
{
link(Data,3031181:Text,[])
link(onEventData,8161333:doText,[])
link(onGetData,13882191:doText,[(396,258)(396,321)])
link(onEventData1,13882191:doAdd,[(466,265)(466,300)])
}
BEGIN_SDK
Add(EditMultiEx,14935266,21,21)
{
WorkCount=#5:doAdd|7:doClear|9:doGetData|10:doEnumData|
EventCount=#11:onEventData|9:onGetData|12:onEventData1|
DataCount=#4:Data|
Width=734
Height=536
link(doAdd,4886133:doEvent1,[(165,27)(165,286)])
link(doClear,1159803:doEvent1,[(172,34)(172,223)])
link(doGetData,16323335:doGetString,[(417,41)(417,146)])
link(doEnumData,1989150:doEnum,[(32,48)(32,482)])
}
Add(MultiElementEx,12477233,364,280)
{
Mode=1
link(Data,14935266:Data,[(370,271)(27,271)])
}
BEGIN_SDK
Add(EditMultiEx,16696865,21,21)
{
WorkCount=#5:##add|9:##hselect|9:##hdelete|7:##clear|
VarCount=#7:##count|8:##handle|13:##eventHandle|5:value|
DataCount=#4:Data|
Point(##add)
Point(##hselect)
Point(##hdelete)
Point(##clear)
Point(##count)
Point(##handle)
Point(##eventHandle)
link(##add,3981091:doValue,[(32,27)(32,76)])
link(value,3981091:Value,[(48,110)(104,110)])
}
Add(Memory,3981091,98,70)
{
Point(Data)
link(Data,16696865:Data,[(104,61)(27,61)])
}
END_SDK
Add(StrList,16323335,511,98)
{
Point(doGetString)
Point(onGetString)
link(onChange,15674265:doData,[])
link(onGetString,4834269:doEvent1,[(550,111)(550,475)(291,475)(291,433)])
}
Add(Hub,1159803,182,217)
{
link(onEvent1,16323335:doClear,[(207,223)(207,111)])
link(onEvent2,12477233:##clear,[(255,230)(255,307)])
}
Add(Hub,4886133,175,280)
{
link(onEvent1,12477233:##add,[])
link(onEvent2,8647301:doData,[(235,293)(235,363)])
}
Add(DoData,8647301,371,357)
{
link(onEventData,16323335:doAdd,[(410,363)(410,104)])
link(Data,12477233:##handle,[])
}
Add(DoData,15674265,630,98)
{
link(onEventData,14935266:onEventData,[(669,104)(669,27)])
link(Data,16323335:Text,[(636,89)(566,89)(566,171)(517,171)])
}
Add(Hub,4834269,301,427)
{
link(onEvent1,14834711:doWork3,[(330,433)])
link(onEvent2,14909714:doData,[])
}
Add(DoData,14909714,413,434)
{
link(onEventData,14935266:onGetData,[(676,440)(676,34)])
link(Data,8785777:Var2,[])
}
Add(ArrayEnum,1989150,119,476)
{
link(onItem,1853175:doEvent1,[])
link(Array,16323335:Array,[(125,166)(531,166)])
}
Add(DoData,15483821,448,483)
{
link(onEventData,14935266:onEventData1,[(683,489)(683,41)])
link(Data,8785777:Var3,[(454,348)])
}
Add(GetDataEx,8785777,413,343)
{
Angle=3
link(Data,12477233:value,[(391,348)])
}
Add(Hub,1853175,196,476)
{
link(onEvent1,14834711:doWork2,[(221,482)(221,398)])
link(onEvent2,15483821:doData,[])
}
Add(HubEx,14834711,326,392)
{
Angle=3
link(onEvent,12477233:##hselect,[(330,293)])
}
END_SDK
Add(ListBox,8161333,476,224)
{
Left=10
Top=5
Width=275
Height=375
}
Add(Button,1621844,224,245)
{
Left=15
Top=395
Width=75
TabOrder=-1
Caption="doAdd"
link(onClick,14754905:doAdd,[])
}
Add(Button,822294,147,357)
{
Left=15
Top=430
Width=75
TabOrder=-1
Caption="doGetData"
link(onClick,15081228:doData,[])
}
Add(Edit,8847070,203,301)
{
Left=105
Top=430
Text="0"
}
Add(DoData,15081228,203,357)
{
link(onEventData,14754905:doGetData,[(284,363)(284,265)])
link(Data,8847070:Text,[])
}
Add(Button,3271976,147,434)
{
Left=15
Top=465
Width=75
TabOrder=-1
Caption="doEnumData"
link(onClick,10414104:doEvent2,[])
}
Add(Hub,10414104,210,427)
{
InCount=2
link(onEvent1,13882191:doClear,[(298,433)(298,307)])
link(onEvent2,14754905:doEnumData,[(291,440)(291,272)])
}
Add(Memo,3031181,357,119)
{
Left=295
Top=390
Width=275
Height=105
ScrollBars=2
}
Add(Memo,13882191,476,294)
{
Left=295
Top=5
Width=275
Height=375
ScrollBars=2
}
Add(Button,8173223,224,182)
{
Left=100
Top=395
Width=75
TabOrder=-1
Caption="doClear"
link(onClick,3911864:doEvent1,[])
}
Add(Hub,3911864,280,182)
{
OutCount=3
link(onEvent1,14754905:doClear,[(326,188)(326,258)])
link(onEvent2,8161333:doClear,[(466,195)(466,237)])
link(onEvent3,10414104:doEvent1,[(305,202)(305,237)(193,237)(193,433)])
}


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

0
Ответов: 16884
Рейтинг: 1239
#57: 2015-09-16 08:00:39 ЛС | профиль | цитата
nesco писал(а):
туда можно запихать все что угодно
А StreamArray - туда что нельзя запихать все что угодно ?
Есть много способов решить TZ поставленное TC имеющимися компонентами.
Например : Через StreamArray
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Ответов: 2059
Рейтинг: 132
#58: 2015-09-16 10:49:10 ЛС | профиль | цитата
nesco
Ну передал, а дальше что? Кто их читать и использовать будет?

Пока да, некому. Появится возможность - появятся компоненты.
Это мысли вслух. "Самодельные" компоненты с такой возможностью упрощают жизнь.
А иногда и обойтись без этого нельзя, если огородов не городить. (Это я про сторонние движки, где указателями жонглируют.)
Че серьезно? А кто мешает установить как душе угодно, для этого вроде есть

Шучу конечно.
[flood]Много чего вчера наговорил. Надо понять и простить!
Два пузыря на грудь принял и не в одном глазу, от боли.[/flood]
я тут прикинул -- а почему не попытаться сделать вот так?

Ну вроде хорошо.
И всё-таки, чего с Netspirit обсуждали, хорошо бы сделать.
Tad
А StreamArray - туда что нельзя запихать все что угодно ?
Есть много способов решить TZ поставленное TC имеющимися компонентами.

Сомнений нет, конечно.
Схема в первом посте тоже работает, и компонентов минимум.
Если про указатели, то тоже можно.
[flood]Временно не буду отвечать.
Пойду в платную корень вытаскивать.[/flood]
карма: 6

0
Ответов: 4630
Рейтинг: 749
#59: 2015-09-16 10:58:10 ЛС | профиль | цитата
nesco писал(а):
сделать что-то типа DataList, и в нем можно будет хранить любые данные
У меня тоже идея такая есть - только сделать виртуальную таблицу, и набор компонентов как в обычных таблицах (можно попробовать и текущие приспособить). Суть в том чтобы:
- хранить любые данные
- хранить связанные данные (например, 1-я "колонка" - ключ, 2, 3, n - значения для данного ключа).
Нужны компоненты для чтения записи данных в указанную колонку указанной строки, поиск в указанной колонке, перебор "строк"/"колонок" строки, операции со строками/колонками, сохранение/загрузка из файла/потока и т.п. Можно ещё компонент для чтения/записи всей строки (с динамическими верхними/нижними точками).
Это похоже на наши матрицы, только, во-первых, "многомерные", во-вторых, без геморроя с вычислением и заданием размеров, в-третьих, в каждой строке может быть различное число "колонок" (как бы динамический массив в каждой строке).
Внутри это реализуется TList-ом строк, хранящим TList-ы колонок с PData внутри.
карма: 26

0
Разработчик
Ответов: 26151
Рейтинг: 2127
#60: 2015-09-16 11:05:04 ЛС | профиль | цитата
Tad писал(а):
А StreamArray - туда что нельзя запихать все что угодно ?

Можно, но не полностью. Я же показал концепт эмуляции алгоритма PList-a, где участки памяти эмулируются мультиком, а StrList хранит только хэндлы мультиков, которые можно тусовать как угодно, не трогая сами мультикии. И еще, StreamArray, в отличие от мультиков, не позволяет выборочно удалять элементы.
карма: 22

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