Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Combo и изменение выбранного пункта
|
|||
|---|---|---|---|
|
#18+
есть таблица с двумя полями код и name в комбо задано rowsource=name rowsourcetype=fields bound to column =1 boundTo=.f. ControlSource=none Value - none мне от комбо надо получить код выбранного пункта и название, но вот в чем фишка - надо чтобы выбранный пункт можно было изменить. Я воспользовался displayValue - возвращает введенное/измененное наименование, но КОД! Код возвращается последний из базы. Т.е. если я выбрал пункт 3 и ничего не изменял, мне возвращается Displayvalue такой же как и value и такой же как и в базе в поле name, код я беру не из комбо, я из таблицы, он получается 3. А как только я изменяю значение пункта комбы, то от таблицы я моментоv получаю код последней записи, а надо чтоб всеравно 3. Т.е., например, есть 10 записей с кодами 1-10 и пришитыми для них названиями, а 11 пукт типа с названием Другое, и вместо него юзер пишет чего ему надо (сохранять для дальнейшего использования это не надо). Или юзер выбирает от 1 до 10, но хочет дополнить наименование своими 5 копейками, тогда мне надо код выбранного пункта и оформленное юзьверем наименование. Как это сделать, не оставляя в базе юзьверских 5 копеек через комбо? на форуме много близких по смыслу тем, но именно того что надо, я не нашел... (хотя помогло DisplayValue) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2004, 14:10 |
|
||
|
Combo и изменение выбранного пункта
|
|||
|---|---|---|---|
|
#18+
Если kod - это символьное поле, то можно так: RowSource = MyTable.kod,name RowSourceType = 6 - fields BoundColumn = 1 ColumnCount = 2 ColumnWidths = 0,100 В первой строчке - это не опечатка. Имя таблицы только у первого поля. Если поле kod числового типа, то добавь настройку BoundTo = .T. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2004, 14:25 |
|
||
|
Combo и изменение выбранного пункта
|
|||
|---|---|---|---|
|
#18+
Не, это не то. Это Вы мне стандартноую операцию дали, а меня ньюанс интересует! Так у меня в списке выпадают названия, а отображается его код, а надо чтобы название и выпадало и оставалось (юзьверю код зачем?) И чтоб юзьверь это название выбранное мог подправить, а я получить подправленное название, и что самое главное, код выбранной позиции. Название я уже получаю, а код получаю последний, все равно что выбрать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2004, 16:42 |
|
||
|
Combo и изменение выбранного пункта
|
|||
|---|---|---|---|
|
#18+
главное, пока я не редактирую выбранную запись, что combo.value что по указателю из таблицы я получаю верный код, а как только втулю например пробел в слове, тут же получаю 11 - номер последней записи - от указателя в таблице, и 0 от combo.value ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2004, 16:57 |
|
||
|
Combo и изменение выбранного пункта
|
|||
|---|---|---|---|
|
#18+
Ну пожалуйста. Хотя бы попробуйте это сделать на тестовой формочке прежде чем возражать. У Вас и получится: отображется поле Name, а выбирается значение поля kod. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2004, 16:57 |
|
||
|
Combo и изменение выбранного пункта
|
|||
|---|---|---|---|
|
#18+
CTAC-KO.. а надо чтобы название и выпадало и оставалось (юзьверю код зачем?) ... См. свой вопрос от 17.10.2004 А на счет подправить? Для этого тебе нужно будет самому написать Valid обработку для Combobox ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2004, 16:57 |
|
||
|
Combo и изменение выбранного пункта
|
|||
|---|---|---|---|
|
#18+
Не факт, что это его вопрос, но вот аналогичная тема http://www.sql.ru/forum/actualthread.aspx?tid=131013 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2004, 16:58 |
|
||
|
Combo и изменение выбранного пункта
|
|||
|---|---|---|---|
|
#18+
дак я все так и сделал прежде чем ответ написать! Все так и прописал как у Вас на примере. Выпадает список с полем name (потому что ширина колонок 0,100), а как выберу - в поле комбо появляется только его код (потому что BoundTo=1/.T. а в первой колонке базы - код). А зачем он мне? Я ж объясняю - мне именно name и нужен, но более того мне не отобразить , а передать на обработку надо код этого выбранного name и его редакцию от юзьверя! А код после редакции меняется! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2004, 17:03 |
|
||
|
Combo и изменение выбранного пункта
|
|||
|---|---|---|---|
|
#18+
короче получается, чтоб не утратить код выбранной записи из комбо, но и иметь возвожность подредактировать выбранное, надо создать текстбокс и в него заносить значение name, выбранное в комбо, и в боксе уже редактировать... а комбу застайлить на 2. Ета кру-тта... Либо быренько опосля выбора из комбы пункта сторить его код в переменную, пока юзьверь не успел че-нить нажать... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2004, 17:14 |
|
||
|
Combo и изменение выбранного пункта
|
|||
|---|---|---|---|
|
#18+
Вод это RowSource = MyTable.name, kod RowSourceType = 6 - fields BoundColumn = 2 ColumnCount = 2 ColumnWidths = 100,0 BoundTo = .T. вернет в Combobox наименование, но в поле, но в поле которое указано в ControlSource вернется Kod. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2004, 17:16 |
|
||
|
Combo и изменение выбранного пункта
|
|||
|---|---|---|---|
|
#18+
Сделай обратные настройки: RowSource = MyTable.name,kod RowSourceType = 6 - fields ColumnCount = 2 BoundColumn = 2 ColumnWidths = 100,0 ColumnLines =.F. Т.е. отображается в качестве выбранного значения всегда содержимое первой колонки. А вот собственно код можно брать откуда угодно. В данном случае из 2-ой колонки. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2004, 17:16 |
|
||
|
Combo и изменение выбранного пункта
|
|||
|---|---|---|---|
|
#18+
Как раз в том посте, от 17.10.2004, об этом и рассказывалось. :-) А заметил как синхронно мы постим? :-) Прям синхронное плавание. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2004, 17:20 |
|
||
|
Combo и изменение выбранного пункта
|
|||
|---|---|---|---|
|
#18+
а у меня нету контролсоурса, и я хотел код получать либо как combo1.value либо из таблицы по текущему положению, а name как combo1.DisplayValue. А при редактировании выбранного указатель в талице едет в конец, а в комбо в 0. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2004, 17:32 |
|
||
|
Combo и изменение выбранного пункта
|
|||
|---|---|---|---|
|
#18+
я угробил на своей форме свое комбо и сделал как Вы советуете на последних двух примерах Все давно получается если не редактировать выбранный пункт НО Получаю из таблицы код 11 или из комбо.валу 0 если выбранную в комбо опцию редактирую. combo1.ContorlSource=none, value=0 Комбо реагирует на редактирование как на поиск несуществующей записи, что-ли. Вот и не возвращает кода ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2004, 17:44 |
|
||
|
Combo и изменение выбранного пункта
|
|||
|---|---|---|---|
|
#18+
CTAC-KOКомбо реагирует на редактирование как на поиск несуществующей записи, что-ли. Вот и не возвращает кода Правильно! Если бы Вы все-таки почитали тему по приведенной ссылке, то там об этом так и написано. ComboBox не предназначен для редактирования содержимого раскрывающегося списка! Точнее, сделать это в принципе можно, но только дополнительным программированием. Никакими настройками этого добиться нельзя! Поэтому сделайте настройку Combo.Style = 2 - DropDown List и не забивайте себе голову ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2004, 17:48 |
|
||
|
|

start [/forum/topic.php?fid=41&msg=32744885&tid=1595585]: |
0ms |
get settings: |
10ms |
get forum list: |
22ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
85ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
74ms |
get tp. blocked users: |
2ms |
| others: | 248ms |
| total: | 464ms |

| 0 / 0 |
