|
Параметры выделения активной строки
|
|||
---|---|---|---|
#18+
Привет всем! Есть подозрение, что вопрос достаточно ламерский, но сходу не смог найти ответ. Итак. Есть два ДВ в окне. Хочется знать, какое из них "текущее". Для этого хочется или убирать синюю строчку, определяющую выделение активной строки в ДВ для не-"текущего" ДВ, или хотя бы менять цвет... Итак, вопрос. Как управлять цветом этого самого элемента, определяющего выделение текущей строки в ДВ? ПС: ПБ 9.0.3 Заранее спасибо за ответ! ... |
|||
:
Нравится:
Не нравится:
|
|||
21.05.2010, 18:50 |
|
Параметры выделения активной строки
|
|||
---|---|---|---|
#18+
может на losefocus повесить selectrow( 0 , false ), а на getfocus - selectrow(getrow(), true) ... |
|||
:
Нравится:
Не нравится:
|
|||
21.05.2010, 19:03 |
|
Параметры выделения активной строки
|
|||
---|---|---|---|
#18+
еще управлять можно, в свойство Color в объекте detail самой dw прописать if( getrow() = currentrow(), 15780518, 16777215 ) цвет можно самому подобрать ... |
|||
:
Нравится:
Не нравится:
|
|||
21.05.2010, 19:09 |
|
Параметры выделения активной строки
|
|||
---|---|---|---|
#18+
Вах! Спасибо - помогло! Не догадался выбрать 0-ю строку :) ... |
|||
:
Нравится:
Не нравится:
|
|||
21.05.2010, 19:33 |
|
Параметры выделения активной строки
|
|||
---|---|---|---|
#18+
Vadim Romanenko , вот у меня три DW в окне, в которых я выбираю параметры поиска и везде надо чтобы было все видно. А вот вопрос: какое DW сейчас в фокусе? и как красиво это показывать? это вопрос интересный. Например, как у вас это делается? ... |
|||
:
Нравится:
Не нравится:
|
|||
21.05.2010, 23:54 |
|
Параметры выделения активной строки
|
|||
---|---|---|---|
#18+
Извиняюсь, только сейчас увидел вопрос. Как выделить текущее ДВ, если их несколько на окне. Не знаю, насколько это красиво с точки зрения программирования, но на окне я эти ДВ кладу поверх прямоугольника. На GetFocus вешаю вызов функции, которая в зависимоси от текущего выбранного ДВ меняет цвет прямоугольников, лежащих на заднем плане. Получается впринципе наглядно. На картинке два состояния - выбрано левое ДВ, ниже - правое. На картинке оно может и не сильно наглядно, но в жизни действительно красиво и удобно. Вторая часть. К сожалению, опять же с точки зрения программирования у нас выбран такой способ. Есть переменная - текущий ДВ. Есть константы цифровые, которые отвечают за то, какой ДВ выбран. На гетФокус каждого ДВ ставим изменение константы. Другой способ - в наследнике u_dw прописывается логика с переменной isActive. На гетФокус собственно true, на loseFocus - соотв false. И у всех наследников можно использовать свойство isActive. По идее, должно работать :) ... |
|||
:
Нравится:
Не нравится:
|
|||
25.05.2010, 11:32 |
|
Параметры выделения активной строки
|
|||
---|---|---|---|
#18+
... а теперь картинка :) ... |
|||
:
Нравится:
Не нравится:
|
|||
25.05.2010, 11:33 |
|
Параметры выделения активной строки
|
|||
---|---|---|---|
#18+
Ну это вы батенька погорячились:) Vadim Romanenko ставим изменение константы ... |
|||
:
Нравится:
Не нравится:
|
|||
25.05.2010, 13:25 |
|
Параметры выделения активной строки
|
|||
---|---|---|---|
#18+
spas2001Ну это вы батенька погорячились:) Vadim Romanenko ставим изменение константы Ну да, конечно - очепятка :) Спешил на совещание. "Ставим изменение переменной на значение константы" - именно так следует читать :) ПС: а у кого какие свои способы решения этой задачи? Может есть более красивые? ... |
|||
:
Нравится:
Не нравится:
|
|||
25.05.2010, 14:47 |
|
Параметры выделения активной строки
|
|||
---|---|---|---|
#18+
Все-равно принцип будет примерно тот же, если отслеживать именно какой контрол активен Если все-таки пойти дальше, в соответствии с принцпами ООП, такими как инкапсуляция, то в принципе может быть все-равно какой объект будет активен. Другое дело, что это может подразумевать изменение много-чего, от интерфейса до бизнес-логики. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.05.2010, 15:25 |
|
Параметры выделения активной строки
|
|||
---|---|---|---|
#18+
Думаю Марк, может что-то еще по этому поводу сказать ... |
|||
:
Нравится:
Не нравится:
|
|||
25.05.2010, 15:27 |
|
Параметры выделения активной строки
|
|||
---|---|---|---|
#18+
1. Есть сервис, наследник n_cst_dwsrv (Используется идеология "службы") Задача: маркировка записи, как цветом, так и "галкой" в первом столбце. Подключается DW. Задается два цвета - для "активного" и "пассивного" DW ("ориентация" у DW нормальная) :) При потере и получении фокуса цвет меняется. Основное: рисуется rectangle и с ним работаем. Почему так? Уже не помню (последняя редакция 02.09.2008) но живет и выдерживает (пока) все извращения разработчиками с цветами полей. 2. Использование SelectRow() желательно не использовать, поскольку признак "selected"это не текущая запись. Можно нарваться. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.05.2010, 15:39 |
|
Параметры выделения активной строки
|
|||
---|---|---|---|
#18+
Raven A2. Использование SelectRow() желательно не использовать, поскольку признак "selected"это не текущая запись. Можно нарваться. Ну так SelectRow() и используется исключительно для "гашения" выделения текущей строки! И это есть хорошо, поскольку никто не требует изменения признака текущей записи ;) Главное чтоб человек не путался. Вот! За натырку на 1. спасибо! Ноу-хау в ПФС - оно важное дело :) ... |
|||
:
Нравится:
Не нравится:
|
|||
25.05.2010, 16:08 |
|
Параметры выделения активной строки
|
|||
---|---|---|---|
#18+
Уважаемый Vadim Romanenko По п.п.2 У нас признак "selected" используется для маркировки НАБОРА записей, с которыми требуется произвести некоторые действия. Поэтому я и сказал, что можно нарваться. Засим лезу опять в берлогу. Удачи всем! ... |
|||
:
Нравится:
Не нравится:
|
|||
25.05.2010, 16:23 |
|
Параметры выделения активной строки
|
|||
---|---|---|---|
#18+
Ну тогда конечно да :) Прийдется или сервис писАть, или соотв. логику прописывать в предке ДВ. У меня таких задач не возникало, потому и в голову даже не пришло. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.05.2010, 16:31 |
|
Параметры выделения активной строки
|
|||
---|---|---|---|
#18+
Коллеги, опять вылез, уж звиняте :( >VanoR > еще управлять можно, в свойство Color в объекте detail самой dw прописать > if( getrow() = currentrow(), 15780518, 16777215 ) >цвет можно самому подобрать А кто Вам сказал, что разработчик там свой код не вставит? Если делать, так уж делать универсалный механизм, не зависимый от описания DW ... |
|||
:
Нравится:
Не нравится:
|
|||
25.05.2010, 17:11 |
|
|
start [/forum/topic.php?fid=15&msg=36642484&tid=1335948]: |
0ms |
get settings: |
10ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
78ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
56ms |
get tp. blocked users: |
1ms |
others: | 318ms |
total: | 500ms |
0 / 0 |