Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 22.12.2008, 22:01   #1
Darked
Новичок
Джуниор
 
Регистрация: 22.12.2008
Сообщений: 2
Печаль Из DBGrid в ListBox

Добрый день, столкнулся вот с такой проблемой, прошу вашей помощи.

Есть у меня DBGrid1, в который данные идут с Query1, черезе DataSource.
База состоит из 3 столбцов: ID, Слово1, Слово2.

Также есть у меня ListBox1, и ListBox2. Мне нужно, чтобы все содержимое 2 столбца (Слово1) пошло в ЛистБокс1, а содержимое столбца "Слово2" в ЛистБокс2.

Вот я сначала делал вот так:

Код:
var l1,l2 :string;

begin
 l1:= DBGrid1.Columns[1].Field.AsString;
 l2:= DBGrid1.Columns[2].Field.AsString;
ListBox1.Items.Add (l1);
ListBox2.Items.Add (l2);
end;
Но добавляется только первая строчка.

Вот такая ситуация, подскажите пожалуйста.
Darked вне форума
Старый 22.12.2008, 22:25   #2
mihali4
*
Старожил
 
Регистрация: 22.11.2006
Сообщений: 9,201
По умолчанию

Цитата:
Но добавляется только первая строчка.
Лучше не так.
Нужно перебрать все записи в квэрике и распихать их по листбоксам:
Код:
Query1.First;
while not Query1.Eof do
begin
ListBox1.Items.Add (Query1.FieldByName('Слово1').AsString);
ListBox2.Items.Add (Query1.FieldByName('Слово2').AsString);
Query1.Next;
end;
mihali4 вне форума
Старый 22.12.2008, 23:23   #3
Darked
Новичок
Джуниор
 
Регистрация: 22.12.2008
Сообщений: 2
По умолчанию

Цитата:
Сообщение от mihali4 Посмотреть сообщение
Лучше не так.
Нужно перебрать все записи в квэрике и распихать их по листбоксам:
Код:
Query1.First;
while not Query1.Eof do
begin
ListBox1.Items.Add (Query1.FieldByName('Слово1').AsString);
ListBox2.Items.Add (Query1.FieldByName('Слово2').AsString);
Query1.Next;
end;
Действительно, все заработало, спасибо Вам!

Чтобы еще одну тему не создавать, напишу еще разок здесь.
Мне нужно импортировать определенные слова в ЛистБокс.
У меня есть текстовый файл, с такой структурой слово1::слово2.
Моя задача: испортировать все "слово1" с ЛистБокс1, и все "слово2" в ЛистБокс2. Увы, в данном случае, я пока не представляю особо, даже чтобы написать пример своего кода. Можете подсказать?
Darked вне форума
Старый 22.12.2008, 23:34   #4
mihali4
*
Старожил
 
Регистрация: 22.11.2006
Сообщений: 9,201
По умолчанию

Вам помогут функции PosEx и Length.
mihali4 вне форума
Старый 27.04.2009, 21:16   #5
Vavik
Пользователь
 
Аватар для Vavik
 
Регистрация: 27.04.2009
Сообщений: 11
По умолчанию

Цитата:
Сообщение от mihali4 Посмотреть сообщение
Лучше не так.
Нужно перебрать все записи в квэрике и распихать их по листбоксам:
Код:
Query1.First;
while not Query1.Eof do
begin
ListBox1.Items.Add (Query1.FieldByName('Слово1').AsString);
ListBox2.Items.Add (Query1.FieldByName('Слово2').AsString);
Query1.Next;
end;
А у меня почему-то виснет, если так делать(
Vavik вне форума
Старый 12.05.2009, 09:24   #6
artemavd
Старожил
 
Аватар для artemavd
 
Регистрация: 05.06.2008
Сообщений: 4,206
По умолчанию

А как сделать, чтобы при выборе записи в главной таблице, те записи в дочерней таблице, которые соответствуют выбранной записи все скопировались отобразились в ListBox-e?
Не стоит смеяться над человеком делающим шаг назад, возможно он делает разбег.
artemavd вне форума
Старый 20.04.2015, 12:27   #7
Shingis
Пользователь
 
Регистрация: 09.04.2009
Сообщений: 27
По умолчанию

Лучше не так.
Нужно перебрать все записи в квэрике и распихать их по листбоксам:
Код:

Query1.First;
while not Query1.Eof do
begin
ListBox1.Items.Add (Query1.FieldByName('Слово1').AsStr ing);
ListBox2.Items.Add (Query1.FieldByName('Слово2').AsStr ing);
Query1.Next;
end;

Darked а как слелать что имена поля были на русском хотя в базе таблице все с латинскими буквами
Shingis вне форума
Старый 20.04.2015, 12:35   #8
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Цитата:
Shingis
Один вопрос - одна тема, тем более, что Darked на форуме уже 6 с лишним лет не появлялся
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума
Закрытая тема


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
listbox blackstersl Общие вопросы Delphi 7 17.09.2008 23:15
ListBox Witaliy Общие вопросы Delphi 10 27.04.2008 17:15
ListBox Rahim1993 Общие вопросы Delphi 3 15.01.2008 18:09
выделение строки в ListBox'е, но не установкой на него фокуса. D-fens Компоненты Delphi 5 06.06.2007 17:47