Форум: "Базы";
Текущий архив: 2013.03.22;
Скачать: [xml.tar.bz2];
ВнизКомпонент типа TListBox, но с привязкой к БД Найти похожие ветки
← →
samalex (2010-06-30 09:16) [0]Уважаемые знатоки!!!
Подскажите компонент типа TListBox, но чтобы список брал из источника БД, было свойство MultiSelect (можно было выбирать несколько значений) и значения не записывались бы сразу в БД (нет DataSourse и DataField).
Задача - сделать фильтр, который выбирает набор данных из БД по нескольким значениям.
Или подскажите, как вы с этим справляетесь.
Заранее благодарен.
← →
12 © (2010-06-30 11:57) [1]> Или подскажите, как вы с этим справляетесь
беру TListBox, выполняю запрос и заполняю TListBox
← →
samalex (2010-06-30 12:34) [2]как заполнять?
как записывать пары "ключ", "отображение"?
← →
Jeer © (2010-06-30 12:45) [3]
> как заполнять?
> как записывать пары "ключ", "отображение"?
Заполняй пробежкой по датасету.
Используй, к примеру TCheckListBox - удобнее
Items - это TStrings, а значит есть поддержка name=value
К примеру name - это id, а value - текст или наоборот
Затем пробегаешь по листам и собираешь id у checked
← →
12 © (2010-06-30 12:53) [4]ну и так можно
TOB = class
public
Str : string;
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
var
OB : TOB;
begin
OB := TOB.Create;
OB.Str := "EEEEEEEE";
ListBox1.Items.InsertObject(0,"ddddd",OB);
ShowMessage(TOB(ListBox1.Items.Objects[0]).Str);
← →
Anatoly Podgoretsky © (2010-06-30 14:06) [5]> samalex (30.06.2010 09:16:00) [0]
Вроде бы ответ как бы на поверхности TDB
← →
samalex (2010-06-30 14:20) [6]
> Вроде бы ответ как бы на поверхности TDB
В стандартных компонентах?
Но там (TDBLixBox всякие) нет "MultiSelect" почему то.
Или просто ТDBGrid использовать?
← →
Anatoly Podgoretsky © (2010-06-30 16:08) [7]> samalex (30.06.2010 14:20:06) [6]
Там есть MultiSelect
← →
samalex (2010-06-30 18:07) [8]
> 12 © (30.06.10 12:53) [4]
>
> ну и так можно
>
> TOB = class
> public
> Str : string;
> end;
>
> var
> Form1: TForm1;
>
> implementation
>
> {$R *.dfm}
>
> procedure TForm1.Button1Click(Sender: TObject);
> var
> OB : TOB;
> begin
> OB := TOB.Create;
> OB.Str := "EEEEEEEE";
> ListBox1.Items.InsertObject(0,"ddddd",OB);
> ShowMessage(TOB(ListBox1.Items.Objects[0]).Str);
Спасибо большое!!! Сделал по аналогии.
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2013.03.22;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.08 c