Вверх ↑
Этот топик читают: Гость
Ответов: 1926
Рейтинг: 172
#1: 2010-03-13 17:59:57 ЛС | профиль | цитата
code_17324.txt

Не работает.
карма: 9
0
файлы: 1code_17324.txt [943B] [199]
Разработчик
Ответов: 4698
Рейтинг: 426
#2: 2010-03-13 18:10:28 ЛС | профиль | цитата
MST_RowAction
------------ Дoбавленo в 18.12:
Ты забыл добавить перерисовку
карма: 10
0
Ответов: 1926
Рейтинг: 172
#3: 2010-03-13 19:37:54 ЛС | профиль | цитата
code_17329.txt

Так тоже не работает! Думаю , это связано с тем, что добавление строк происходит вот так, через цикл.
карма: 9
0
файлы: 1code_17329.txt [1.2KB] [285]
Ответов: 4641
Рейтинг: 334
#4: 2010-03-13 19:57:30 ЛС | профиль | цитата
стоп. тут вроде что то похожее было и nesco сказал что пример не верный. И если Assasin, сам свой пример не поправит то сам исправит...если вспомнит!
карма: 1
Время верстки: %cr_time% Текущее время: %time%
0
Разработчик
Ответов: 26151
Рейтинг: 2127
#5: 2010-03-13 20:00:13 ЛС | профиль | цитата
Ravilr писал(а):
nesco сказал что пример не верный

Я его давно уже поправил
------------ Дoбавленo в 20.01:
3042 писал(а):
Думаю , это связано с тем, что добавление строк происходит вот так, через цикл

Не причем тут никакой цикл. Ищи на форуме, недавно про это отвечал, повторяться не буду. А лучше просмотри исправленный пример, надеюсь, сам поймешь почему не работает.
карма: 22

0
Ответов: 1926
Рейтинг: 172
#6: 2010-03-14 07:47:26 ЛС | профиль | цитата
nesco писал(а):
А лучше просмотри исправленный пример, надеюсь, сам поймешь почему не работает.

Это вот этот: MST_ArrayRows? В нём всё работает.

Я скопировал практически всё оттуда в свой пример, на всё работает до тех пор, пока я не поставлю цикл на добавление строк.
------------ Дoбавленo в 07.51:
nesco писал(а):
Ищи на форуме


Подсказал бы хоть, где искать.
------------ Дoбавленo в 08.02:
Вроде бы получилось. Но мне непонятно вот что.

1. Почему, когда в строке 3 столбца, нужно добавлять 4 MT-элемента?


Add(StrList,4383086,333,56)
{
Strings=#22:Иван;Иванов;Иванович;0|26:Андрей;Андреев;Андреевич;0|
}
Add(ArrayEnum,1976442,347,126)
{
link(onItem,16356153:doMT,[])
link(Array,4383086:Array,[])
}
Add(MT_String,16356153,396,119)
{
}

2. Почему вот в этом участке кода:



Add(ColorBox,1200809,259,281)
{
Left=45
Top=295
Width=110
Height=21
TypeListColors=1
DefColor=128
}
Add(ColorBox,13832279,301,281)
{
Left=210
Top=295
Width=110
Height=21
DefColor=15780518
}
Add(Edit,11537864,217,281)
{
Left=325
Top=295
Width=20
Text="0"
DataType=2
}
Add(MST_RowAction,10547525,259,344)
{
Action=5
MSTControl="MTStrTbl"
link(onChange,13664548:doRedraw,[])
}
Add(MT_AddData,1224395,217,344)
{
Count=3
link(onAdd,10547525:doRowAction,[])
link(Data1,11537864:Text,[])
link(Data2,1200809:Index,[(230,328)(272,328)])
link(Data3,13832279:CurrentColor,[(237,333)(307,333)])
}
Add(RedrawManager,13664548,301,344)
{
ControlManager="MTStrTbl"
}


Третья точка данных соединяется с точкой выделенного цвета, а вторая - с точкой индекса выделенного цвета?
карма: 9
0
Разработчик
Ответов: 26151
Рейтинг: 2127
#7: 2010-03-14 12:41:21 ЛС | профиль | цитата
3042 писал(а):
Почему, когда в строке 3 столбца, нужно добавлять 4 MT-элемента?

Вот это и есть особенность кортежных данных. Кортеж, это хвост, который не отображается в действующих столбцах, но два его элемента могут использоваться -- индекс иконки и цвета ячейки, и, если для индекса иконки есть отдельная ячейка, то для цвета используется элемент скрытого кортежа. И вообще, скрытый кортеж -- это уникальная вещь, такое построение таблиц напоминает дом, где столбцы и строки -- это видимые этажы, а кортеж -- подземные этажы, которые не видны, но могут уходить вглубь очень далеко
------------ Дoбавленo в 12.45:
3042 писал(а):
Я скопировал практически всё оттуда в свой пример, на всё работает до тех пор, пока я не поставлю цикл на добавление строк

Я же написал
nesco писал(а):
А лучше просмотри исправленный пример


------------ Дoбавленo в 12.54:
3042 писал(а):
Третья точка данных соединяется с точкой выделенного цвета, а вторая - с точкой индекса выделенного цвета?

Такова особенность построения упакованных данных цвета. Ограничение накладывает 32-х битный размер ячейки, у которого можно использовать только 28 бит, из них 24-е бита использует цвет ячейки, и только 4-е остается под цвет текста, что и повлекло за собой применение индексов для 16-ти цветов. А в описании так и написано, кстати
Wiki писал(а):
ColorsRow - [IndexRow][IndexColorText (0 - TextColor; -1 - OldParametr)][ColorRow (0 - TextBkColor; -1 - OldParametr)]


карма: 22

0
Ответов: 1926
Рейтинг: 172
#8: 2010-03-15 15:58:12 ЛС | профиль | цитата
Получается, что задать цвет текста в помощью числа я смогу (например, через диалог цвета)? Только с помощью индекса?

nesco писал(а):
nesco писал(а)А лучше просмотри исправленный пример

3042 писал(а):
Это вот этот: MST_ArrayRows ?

карма: 9
0
Разработчик
Ответов: 26151
Рейтинг: 2127
#9: 2010-03-15 16:06:02 ЛС | профиль | цитата
3042 писал(а):
Получается, что задать цвет текста в помощью числа я смогу (например, через диалог цвета)? Только с помощью индекса?

Да, для текста только индексом или 0, но тогда используется поле цвета TextColor элемента MST_SetColor, там цвет может быть любой
карма: 22

0
Ответов: 1926
Рейтинг: 172
#10: 2010-03-15 18:54:24 ЛС | профиль | цитата
nesco писал(а):
MST_SetColor


Это для всей таблицы, а для одной строки или ячейки?
карма: 9
0
Разработчик
Ответов: 26151
Рейтинг: 2127
#11: 2010-03-15 19:13:12 ЛС | профиль | цитата
3042 писал(а):
Это для всей таблицы, а для одной строки или ячейки?

Для текста доступно только 15 цветов для каждой ячейки и больше не будет, даже в проекте, для самой ячейки доступен весь 24-х битный цвет
карма: 22

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