![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Множественный выбор
assassin8899 © (2008-04-13 22:28:00)Нужно сделать множественный выбор в зависимости от значения Combobox.text .Case сделать нельзя.Есть ли какой нибудь альтернативный вариант.
Palladin (2008-04-14 09:33:00) [1]
>
assassin8899(14.04.08 00:31) [10]
ну наконец то нормально объяснил. все очень просто, как вариант. создаем FldMap:TStringList, заполняем его строками вид
'Фамилия=second_name'
'Имя=first_name'
и т.д., т.е. соответствиями между подписями полей и названиями полей.
и потом, на EditChange
ADOQuery.sql.text:='select * from mytable where '+FldMap.Values[ComboBox.Text]+'=:PValue';
ADOQuery.Parameters.ParamByName('PValue').Value:=Edit.Text;
ADOQuery.active:=true;
есть и другие чуть более оптимальные варианты, но работающие абсолютно по тому же принципу
Loginov Dmitry (2008-04-14 07:52:00) [2]> и я хочу вместо if...else найти более компактный вариант
тогда [9]
Семеныч (2008-04-14 00:31:00) [3]> множественный выбор в зависимости от значения Combobox.text.
> Case сделать нельзя.
Если очень хочется, то можно:
case Combobox.ItemIndex of
...
assassin8899 (2008-04-14 00:31:00) [4]Имеется таблица ADOTable со значениями которая отображается в DataGrid
Есть combobox в котором к примеру поля Фамилия Имя Отчечтво
Есть Edit в который мы вводим искомое значение в зависимости от выбранного значение в combobox(к примеру если мы хотим найти строку с определенной фамилией, то в combobox выбираем поле Фамилия и в edit вводим искомую фамилию)
К примеру у меня это на событии EditChange
if combobox.text='Фамилия' then
begin
ADOQuery.sql.text:='select...
ADOQuery.active:=true;
end
else
if combobox.text='Имя'
begin
........
У меня таких значений в Combobox много и я хочу вместо if...else найти более компактный вариант
AIK (2008-04-13 23:34:00) [5]
> выбор в зависимости от значения Combobox.text
Может тебе всеголиш onChange нужен?
Palladin (2008-04-13 23:25:00) [6]фух... трудно с тобой...
>тогда должен произвестись поик
по какому критерию поиск?? что именно зависит от текста??
assassin8899 (2008-04-13 23:19:00) [7]тогда должен произвестись поик в ADOTable и вывести строку с данным значением в DBGrid
sniknik (2008-04-13 23:03:00) [8]> что тогда должно случиться?
убийство 8899-го? ;)
Palladin (2008-04-13 22:50:00) [9]
>assassin8899(13.04.08 22:44) [3]
ну вот в text, например, значение "assassin8899", что тогда должно случиться?
assassin8899 (2008-04-13 22:44:00) [10]в зависимости от значения в Combobox.text происходит запрос
Palladin (2008-04-13 22:33:00) [11]
>assassin8899(13.04.08 22:28) [0]
а что ты хочешь множественно выбрать?
DrPass (2008-04-13 22:31:00) [12]if then else
Повторять до готовности