Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.01.23;
Скачать: CL | DM;

Вниз

Надо в каждой ячейке DBGrida иметь свой выпадающий список.   Найти похожие ветки 

 
alextov   (2004-12-15 18:17) [0]

пользую DBGridEh .
Там есть свойство Column.PickList,куда заноситься список строк, которые будут выпадать в комбобоксе.
Но это свойство на всю колонку , а мне надо, чтоб выпадающий список, зависел от номера строки (значения строки).
Подскажите как это можно реализовать...


 
Соловьев ©   (2004-12-15 18:28) [1]

лукап поле


 
alextov   (2004-12-15 18:53) [2]

и к каждой записи(строке) подключать новый лукап-датасет?


 
Zacho ©   (2004-12-15 23:46) [3]

alextov   (15.12.04 18:53) [2]

Формируй PickList в DataSet.AfterScroll

А вообще, подробнее опиши свою задачу - возможно есть более простое/правильное решение.


 
Соловьев ©   (2004-12-16 10:30) [4]

и к каждой записи(строке) подключать новый лукап-датасет?

Т.е. у тебя это поле имеет разнородную информацию? А как это?


 
Sergey13 ©   (2004-12-16 10:43) [5]

2[2] alextov   (15.12.04 18:53)
>и к каждой записи(строке) подключать новый лукап-датасет?
Ты бы описал попдробнее зависимость выпадающего списка "от номера строки (значения строки)".
В принципе, можно фильтровать лукап-датасет по значению строки текущего НД. Но тогда наверное возникнет напряг с отображением других строк, отличных по значению от текущей.
Мне больше нравится решение от [3] Zacho © , только может не на AfterScroll, а на BeforeEdit стоит это дело лучше посадить.


 
alextov   (2004-12-16 11:11) [6]

Поподробнее
НАПРИМЕР  селект возвращает 3 строки со значениями
  "красный"
  "синий"
  "зеленый"
Мне нужно чтобы при установке курсора в ячейку со значением "красный" выпадал список выбора -
  "темно красный"
  "светло красный"
  "бордовый"
но при установке курсора в ячейку со значением "зеленый" выпадал список выбора -
  "темно зеленый"
  "светло зеленый"
  "салатовый"

Я пробовал подключать разные лукап-датасеты, но тогда действительно возникает проблема с отображением строк, которые не представлены в текущем лукап-датасете.
Похожая проблема возникает если менять PickList в DataSet.AfterScroll - но как-то периодически...


 
Соловьев ©   (2004-12-16 11:15) [7]

Мне нужно чтобы при установке курсора в ячейку со значением "красный" выпадал список выбора -
 "темно красный"
 "светло красный"
 "бордовый"
но при установке курсора в ячейку со значением "зеленый" выпадал список выбора -
 "темно зеленый"
 "светло зеленый"
 "салатовый"

А что тебе мешает чтобы селект возращал как раз это?????


 
Sergey13 ©   (2004-12-16 11:19) [8]

А если попробовать настроить лукап не по одному полю, а по нескольким (2). Вроде должно работать.


 
Соловьев ©   (2004-12-16 11:22) [9]

2 Sergey13 ©   (16.12.04 11:19) [8]
Тут стандартная завязка мастер-детайл. Автор сам себя путает.


 
Sergey13 ©   (2004-12-16 11:28) [10]

2[9] Соловьев ©   (16.12.04 11:22)
Скорее тут недоработка (с моей т.з.) в проектировании. Если есть всего одно поле "цвет", а справочник "цвета" спроектирован с внутренними зависимостями, то работать с этим очень трудно. Следовало бы в рабочей таблице 2 поля "цвет" и "оттенок".
Такое мое ИМХО на мои же догадки о структуре таблиц автора. 8-)


 
alextov   (2004-12-16 11:35) [11]

2 Соловьев
Один из нас точно чего-то не понимает :)

Мне нужно чтобы пользователь несогласный с тем  что  "зеленый" - зеленый мог выбрать из списка "салатовый"
и в следующей строке в этой же колонке выбрать из списка "автомобиль".
Но чтоб в первой строке в выпадающем списке "автомобиль" не светился и ,соответственно, во второй строке в списке не светился "салатовый".


 
alextov   (2004-12-16 11:38) [12]

возможно с цветом был не совсем удачный пример
лучше для понимания такая структура таблицы
"исследование" - "результат"
для разных исследований - разные результаты (соответственно - разные выпадающие списки в колонке результат)


 
Sergey13 ©   (2004-12-16 11:39) [13]

2[11] alextov   (16.12.04 11:35)
А как организован справочник, откуда берутся "салатовые" и "автомобили"? 8-)


 
Соловьев ©   (2004-12-16 11:40) [14]

Мне нужно чтобы пользователь несогласный с тем  что  "зеленый" - зеленый мог выбрать из списка "салатовый"

Интересно, а что ты собераешся увидеть, если у тебя запрос возращает, красный, зеленый и желтый, а ты туда салатовый запишешь?
Тут имхо, чего то не туда пошло. Чего-то вовсе я запутался. Что нужно то?


 
Соловьев ©   (2004-12-16 11:41) [15]

(соответственно - разные выпадающие списки в колонке результат)

ага. это уже ближе. Ну вот и вторая колонка вырисовалась :)
Что и требовалось - стандартная связка мастер-детайл и лукап поля :)


 
msguns ©   (2004-12-16 16:33) [16]

Вот что происходит, когда в наличии неуемное желание редактировать непосредственно в гриде ;)))


 
имя   (2004-12-17 09:51) [17]

Удалено модератором



Страницы: 1 вся ветка

Текущий архив: 2005.01.23;
Скачать: CL | DM;

Наверх




Память: 0.51 MB
Время: 0.025 c
4-1101853820
XfroSt
2004-12-01 01:30
2005.01.23
Управление службой RRAS (входящие подключения)


1-1104847433
BoAlSe
2005-01-04 17:03
2005.01.23
Деактивация


1-1105239762
HF-Trade
2005-01-09 06:02
2005.01.23
Как выйти из цикла For и продолжить выполнение программы?


14-1104323460
Digitman
2004-12-29 15:31
2005.01.23
Как вже задолбал Mirabilis ..


1-1105602524
Gek1
2005-01-13 10:48
2005.01.23
Маленькие буквы в строке