x11 Posted May 9, 2020 Share Posted May 9, 2020 UniDBLookupComboBox привязан к столбцу сетки UniDBGrid. Хочу сделать так, чтобы когда пользователь сделал выбор и список UniDBLookupComboBox закрылся, то выполнить DataSet.Post. Пробовал 2 события: OnCloseUp и OnSelect - if DataSet1.State in dsEditModes then DataSet1.post; Но проблема в том, что в этих событиях в момент закрытия списка сам DataSet1, который привязан к сетке, находится в режиме dsBrowse. В общем, как правильно записать выбор пользователя в базу при закрытии списка? Quote Link to comment Share on other sites More sharing options...
x11 Posted May 9, 2020 Author Share Posted May 9, 2020 После закрытия списка кнопка Post неактивна. Quote Link to comment Share on other sites More sharing options...
Sherzod Posted May 9, 2020 Share Posted May 9, 2020 54 minutes ago, x11 said: Хочу сделать так, чтобы когда пользователь сделал выбор и список UniDBLookupComboBox закрылся, то выполнить DataSet.Post. Попробуйте такое решение: UniDBLookupComboBox.ClietnEvents.ExtEvents -> function select(combo, record, eOpts) { combo.blur(); } 1 Quote Link to comment Share on other sites More sharing options...
x11 Posted May 9, 2020 Author Share Posted May 9, 2020 Да, помогло, спасибо. В паре с if DataSet1.State in dsEditModes then DataSet1.post; теперь сохраняется значение в базу сразу при закрытии. Но хотелось бы в будущем, чтобы это работало без добавления combo.blur(); Quote Link to comment Share on other sites More sharing options...
x11 Posted May 9, 2020 Author Share Posted May 9, 2020 Чтобы не создавать похожую тему, задам вопрос здесь. Возможно ли сделать так, чтобы привязанный к столбцу выпадающий список UniDBLookupComboBox автоматически выпадал, когда пользователь вызывает ячейку таблицы на редактирование? Ну т.е. когда пользователь делает двойной щелчок мышкой по ячейке этого столбца. Потому что неудобство в том, что приходится делать аж ТРИ щелчка по ячейке, чтобы выпал список. Спасибо. Quote Link to comment Share on other sites More sharing options...
Sherzod Posted May 9, 2020 Share Posted May 9, 2020 22 minutes ago, x11 said: Возможно ли сделать так, чтобы привязанный к столбцу выпадающий список UniDBLookupComboBox автоматически выпадал, когда пользователь вызывает ячейку таблицы на редактирование? Попробуйте: procedure TMainForm.UniFormCreate(Sender: TObject); begin UniDBLookupComboBox1.JSInterface.JSAddListener('focus', 'function(){this.expand()}'); end; 1 Quote Link to comment Share on other sites More sharing options...
x11 Posted May 9, 2020 Author Share Posted May 9, 2020 Работает. Спасибо. 1 Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.