![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
Регистрация: Sep 2006
Сообщений: 6
|
Привет всем!!!
Собственно 2 вопроса: 1 Как в DataGrid сделать строки разной высоты 2 И как убрать цвет (выделяемость) появляющийся при наведении мыши ??? |
|
|||||
|
4AM Games
|
1)У всех ячеек в строке одинаковая высота, у всех ячеек в столбце одинаковая длина
Высота каждой строки одинаковая. 2) посмотрите свойстов selectable От модератора: Устное предупреждение за название топика, на этом форуме принято называть топики максимально осмысленно. На всякий случай скажу, что аргумент, я тут в первый раз, новичек, не успел прочесть правила не учитывается
__________________
Я перестал переписывать, начал редактировать, еще лет 15 и я стану писателем ^_^ |
|
|||||
|
Регистрация: Sep 2006
Сообщений: 6
|
Вот ведь...
Высота не ячейки, а всей записи меня интересует. И свойство selectable отвечает за выделение всей строки (установка записи в положение checked так сказать...) а мне требуется найти свойство отвечающее за подсветку записей при наведении мыши; но это скорее моя вина не точности вопроса. (да ... и скажу честно, такое отношение к содержимому топиков меня приятно удивило, постараюсь быть более адекватным =) ) Да и вот ещё про высоту записей: Может стоит, как то от этого оттолкнуться??? |
|
|||||
|
4AM Games
|
Насчет цветов и прочих визуальных настроек, посмотреть в хелпе, посмотри ключевые слова Skining Components.
Насчет размеров строк скажу чуть подробнее. Дело в том что ListBased компоненты (List,ComboBox,DataGrid) скролят не мувиклипы, а данные в массиве. Предположим у тебя есть массив [1,2,3,4,5,6,7,8,9,0], а в датагриде видно только три строки. это значит что генерируется массив для текущех ячеек [1,2,3], после чего если ты нажмешь кнопку вниз, то сгенерируется следующий массив [2,3,4] и так далее. Тоесть если ты сделаешь верхнюю ячейку выше(в чем я очень сомневаюсь, ибо компонент будет работать не нормально), то та ячейка останется своего размера, и всегда будет на своей позиции. Однако если тебе нужно куда то вставить больше информации, можешь почитать в хелпе про CellRenderer
__________________
Я перестал переписывать, начал редактировать, еще лет 15 и я стану писателем ^_^ |
|
|||||
|
По поводу подсветок всяких строк DataGrid и List, могу предложить функцию, я написал ее как раз для такого случая, забил туда все нужные мне свойства этих компонентов и по мере надобности ее использую...
function set_dg_style (this_page_dg)
{
trace ("set style... = " + this_page_dg);
this_page_dg.setStyle ("useRollOver", 'false');
this_page_dg.setStyle ("borderStyle", "solid");
//////////////////////////////////////////////////
this_page_dg.setStyle ("borderColor", "0xFFffFF");
this_page_dg.setStyle ("borderCapColor", "0xffFfFF");
this_page_dg.setStyle ("buttonColor", "0xffffFF");
this_page_dg.setStyle ("highlightColor ", "0xffFfFF");
this_page_dg.setStyle ("shadowCapColor", "0xffFfFF");
//////////////////////////////////////////////////
this_page_dg.setStyle ("backgroundColor", "0xFfFFFF");
this_page_dg.setStyle ("backgroundDisabledColor", "0xCCCCff");
this_page_dg.setStyle ("textAlign", "right");
this_page_dg.setStyle ("rollOverColor", "0xffffff");
this_page_dg.setStyle ("selectionColor", "0xffffff");
this_page_dg.setStyle ("textSelectedColor", "0x333333");
this_page_dg.setStyle ("fontSize", "12");
this_page_dg.setStyle ('fontfamily', 'Verdana');
this_page_dg.setStyle ('fontWeight', 'bold');
this_page_dg.setStyle ('hScrollPolicy', "off");
this_page_dg.setStyle ('vScrollPolicy', "off");
this_page_dg.setStyle ("backgroundDisabledColor", '0xFFFFFF');
this_page_dg.setStyle ("disabledColor", "0x939393");
//this_page_dg.setStyle ('textRollOverColor', '0x0000ff');
}
///////////////////////////////////////////
// собственно пример использования
///////////////////////////////////////////
this.createClassObject(mx.controls.DataGrid, "my_dg", 10);
my_dg.setSize(140, 100);
my_dg.move(10, 10);
var myDP_array:Array = new Array();
myDP_array.push({name:"Clark", score:3135});
myDP_array.push({name:"Bruce", score:403});
myDP_array.push({name:"Peter", score:25});
my_dg.dataProvider = myDP_array;
set_dg_style (my_dg);
У меня встречный вопрос, как сделать так чтобы при наведении курсора на эти компоненты появлялась "рука"... Кроме скрытия курсора и присоеденения клипа с рукой пока ничего не придумал... Может кто-нибудь знает решение...
__________________
www.cubik.biz |
|
|||||
|
4AM Games
|
Можно попробывать через CellRenderer (тоесть запихнуть в CellRenderer кнопку)
Тут я давал ссылку на примеры с CellRenderer'ами, правда там вроде нету с мышкой. http://flasher.ru/forum/showthread.p...778#post569778
__________________
Я перестал переписывать, начал редактировать, еще лет 15 и я стану писателем ^_^ |
|
|||||
|
Спасибо,я их позавчера выкачал, все... правда подходящего ничего не нашел, но интересные мысли там есть... будем работать в этом направлении...
__________________
www.cubik.biz |
|
|||||
|
Регистрация: Sep 2006
Сообщений: 6
|
за "rollOverColor" огромное спасибо
, однако появился следующий вопрос:если мои строки разлинованы: Можно ли для "rollOverColor" установить что-то вроде ["0xFFFFFF", "0xEAEAEA"] ??? C CellRender`ом всё ясно. Именно здесь, у меня может быть от двух до шести кнопок в ячейке, и имеет смысл уменьшать размер строки... но если сделать это нельзя, то финит всей идее с датагридом =) |
|
|||||
|
Первое что приходит в голову - это проверять четность выбраной строки и выставлять "rollOverColor" в соответствии с четностью
![]()
__________________
www.cubik.biz |
|
|||||
|
Регистрация: Sep 2006
Сообщений: 6
|
Кстати линк на хороший пример работы с кел рендером в хэлпе лежит:
www.macromedia.com/go/component_samples. ...хотя сам я тоже с французского начинал =) (сорри за литл офф) |
![]() |
![]() |
Часовой пояс GMT +4, время: 00:58. |
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | |
| Опции просмотра | |
|
|