Topic: Выбор значения в поле из другой табличной формы

Понятно, что есть возможность выбора при помощи элемента ComboBox. Но если этот список довольно-таки большой, то данный способ очень неудобен. Думается, что должен быть вариант выбора из табличной формы. Т.е. есть поле ComboBox (или поле Edit со свойством ReadOnly), а рядом с ним есть кнопка, при нажатии на которую открывается какая-либо форма с компонентом TableGrid (а может быть и TreeView). После двойного щелчка по выбранной записи этой таблицы должна открываться не форма редактирования этой записи. А должно значение определённого поля выбранной записи подставиться в вышеуказанный компонент ComboBox (или Edit). Ну и, соответственно, табличная форма после выбора должна автоматически закрыться.
Но вот как это можно осуществить?

2 (edited by derek 2021-04-04 17:35:35)

Re: Выбор значения в поле из другой табличной формы

Привет Gri,
Я думаю что на большую часть того, о чем вы спрашиваете, можно ответить, сделав поле со списком «доступным для поиска» (и, возможно, «отсортированным»). Смотрите скриншот.
Derek.

Post's attachments

Attachment icon gri.jpg 167.46 kb, 98 downloads since 2021-04-04 

3 (edited by gri 2021-04-05 19:23:38)

Re: Выбор значения в поле из другой табличной формы

derek wrote:

Привет Gri,
Я думаю что на большую часть того, о чем вы спрашиваете, можно ответить, сделав поле со списком «доступным для поиска» (и, возможно, «отсортированным»). Смотрите скриншот.
Derek.

Спасибо за совет. Действительно, открыл для себя новую возможность использования компонента ComboBox.
Но, всё-таки, хотелось нечто другое.
----------
Это реализовано в другой неплохой программе. Не буду уж говорить в какой. Но, если это было бы и в My Visual Database, это было бы классно. Может быть оно уже и реализовано, и я просто не знаю, как это организовать.
----------
1. Вот форма, в которой есть поле, похожее на ComboBox - "Тип устройства". Только у него нет стрелочки, а справа от этого поле есть квадратная кнопка с тремя точками. Нажимаем на эту кнопку.
(см. 01.png)
2. Появляется другая форма с таблицей (её также можно настроить и в форме дерева). Дважды щёлкаем по нужной записи. Эта форма с таблицей закрывается.
3. А в нашем поле "Тип устройства" появляется выбранное значение.
----------
В My Visual Database же двойным щелчком по записи в таблице можно лишь открыть форму для редактирования, но никак не для выбора.
----------
PS. Почему у меня нет возможности вставить в текст сообщения url-код на сриншот?

Post's attachments

Attachment icon 01.png 5.47 kb, 94 downloads since 2021-04-05 

Re: Выбор значения в поле из другой табличной формы

Делаете с кнопку справа от ComboBox с любыми точками или иконкой какие вам нравятся, , присваиваете действие Показать форму.
Делаете форму с TableGrid в который выводите те значения из которых надо выбирать.
Создаете скрипт по событию этого TableGrid OnCellClick или OnCellDoubleClick, в котором определяете, какая запись соответствует строке, в которой находится ячейка. Делаете SELECT для значений ComboBox  по id той записи, которая выбрана в гриде (будет одна запись), выбираете её через свойство ComboBox. ItemIndex :=1;
Закрываете вызванную форму.

Re: Выбор значения в поле из другой табличной формы

Спасибо. Буду пробовать. Со скриптами пока ещё на Вы. Но надо эту тему изучить, поскольку данная программа с применением скриптов - это нечто.