Гость
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Выбор при 2х одинаковых записях в комбо / 11 сообщений из 11, страница 1 из 1
29.03.2011, 06:06
    #37186958
Keeper2009
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выбор при 2х одинаковых записях в комбо
Доброе время суток.

Есть комбо (mgorod), в него источником (тип - Fields) вываливаются записи из файлика tmpklad.dbf (есть поле Name и CODE)
на событие KeyPress стоит фильтр, дабы при нажатии на кнопочки, выводились похожие записи (вводим МОС и собссна отображаются все записи начинающиеся с этих букв). Имеется проблема такая - допустим в файле формируется список городов и среди них есть две записи с именем МОСКВА, только у первой запси поле CODE имеет значение 100001, а у второй 100000. Так вот, когда набираю МОСКВ и от крываю комбо, то вижу две записи МОСКВА, МЫШКОЙ выбираю запись номер два, но выбирается почему-то только первая запись. То есть значение CODE от первой записи и только, если грохнуть первую, то без проблем выбирается вторая. Подскажите плз, как бороться с этим ? )))
...
Рейтинг: 0 / 0
29.03.2011, 11:04
    #37187299
ВладимирМ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выбор при 2х одинаковых записях в комбо
Установить значение свойства

ComboBox.BoundTo = .T.
...
Рейтинг: 0 / 0
30.03.2011, 01:12
    #37189241
Keeper2009
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выбор при 2х одинаковых записях в комбо
Пробовал - не получилось. ControlSource стоит в None, а DisplayValue=mgorod т.е. само же комбо.
...
Рейтинг: 0 / 0
30.03.2011, 11:26
    #37189702
ВладимирМ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выбор при 2х одинаковых записях в комбо
Приведите все сделанные Вами настройки ComboBox.

И еще, если в открывшемся списке отображаются две одинаковые записи "Москва", то как Вы сами-то отличаете какой записи какой код соответствует? Почему считаете, что то, что выбирает ComboBox - не правильно?
...
Рейтинг: 0 / 0
31.03.2011, 02:05
    #37191501
Keeper2009
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выбор при 2х одинаковых записях в комбо
ВладимирМПриведите все сделанные Вами настройки ComboBox.

Все настройки по умолчанию кроме:
1.RowSourceType: 6- Fields
2.RowSource:TmpKlad.name
3.NumberOfElements:8
4.Style:0-Dropdown Combo


И еще, если в открывшемся списке отображаются две одинаковые записи "Москва", то как Вы сами-то отличаете какой записи какой код соответствует? Почему считаете, что то, что выбирает ComboBox - не правильно?

Ну у первой МОСКВЫ значение поле CODE заканчивается на 051, а у второй на 000, в отладчике (да и по формированию следующей таблицы в программе) видно, что выбор идет всегда по первой записи.
...
Рейтинг: 0 / 0
31.03.2011, 02:09
    #37191503
Keeper2009
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выбор при 2х одинаковых записях в комбо
Вот пример, просто сделал пустую форму...эффект тот же. В этом случае два города ИРКУТСК одинаковых, нужен второй, у которого CODE заканчивается на 000.
...
Рейтинг: 0 / 0
31.03.2011, 09:42
    #37191661
IgorNG
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выбор при 2х одинаковых записях в комбо
Keeper2009, выводи в комбобокс вместе с названием города его код и выбирайте нужный. Проблема-то в чем?
...
Рейтинг: 0 / 0
31.03.2011, 10:51
    #37191841
ВладимирМ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выбор при 2х одинаковых записях в комбо
Делаешь следующие настройки

Код: plaintext
1.
2.
mgorod.RowSource: tmpklad2.name,Code   && Обрати внимание, что алиас таблицы только у первого поля!
mgorod.BoundColumn:  2                   && Выбранное значение брать из  2  столбца выпадающего списка

Метод mgorod.LostFocus меняешь следующим образом

Код: plaintext
1.
2.
Thisform.mGOROD2.Value = Alltrim(tmpklad2.socr)+[. ]+Alltrim(tmpklad2.Name)
Thisform.mklad.Value   = This.Value 

Все. Больше ничего в этом методе писать не надо.

Для понимания, что такое ComboBox почитайте вот это http://forum.foxclub.ru/read.php?29,503780,504381#msg-504381
...
Рейтинг: 0 / 0
31.03.2011, 11:07
    #37191882
Keeper2009
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выбор при 2х одинаковых записях в комбо
Спасибо, помогло. То есть получается по имени низя выбирать ибо дубли, а вот CODE разный, следовательно привязка и выбор по нему ? или же получаем не значение, а номер....
...
Рейтинг: 0 / 0
31.03.2011, 20:39
    #37193248
ВладимирМ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выбор при 2х одинаковых записях в комбо
Keeper2009Спасибо, помогло. То есть получается по имени низя выбирать ибо дубли, а вот CODE разный, следовательно привязка и выбор по нему ? или же получаем не значение, а номер....
Выбирать-то можно. Кстати, присланный Вами код у меня работает без ошибок. Выбирает именно ту запись, которая указана. Ничего не "путает".

Вероятно, у Вас еще есть какие-то "завязки" на позицию курсора в таблице, ведь первой командой после выбора, Вы зачем-то разрываете связь между выбранным значением ComboBox и положением указателя записи в таблице THISFORM.mgorod.RowSource=""), а затем еще вызываете метод обновления "картинки" ComboBox (THISFORM.mgorod.Refresh).

Т.е. ошибка явно "наведенная". Зависит от чего-то, чего Вы в присланном примере не сделали.

Ну, а то, что я сделал, это просто устранение этой самой "не определенности" как по положению указателя записи, так и по выбранному значению.
...
Рейтинг: 0 / 0
31.03.2011, 23:32
    #37193413
Keeper2009
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выбор при 2х одинаковых записях в комбо
Хм, специально сделал пустой проект и в него просто воткнул событие, выбора не было нормального... разрыв источника я убрал, просто запамятовал исправить во вложении. Сие есть эксперименты с КЛАДРом =)
...
Рейтинг: 0 / 0
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Выбор при 2х одинаковых записях в комбо / 11 сообщений из 11, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]