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

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

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 10.03.2011, 13:53   #1
Aleksandr69
Пользователь
 
Регистрация: 11.12.2010
Сообщений: 71
По умолчанию

В итоге вот что получилось может кому пригодиться

Код:

    Col := 0; Line := 0; //ineger
  for i := 0 to Listbox1.Items.Count-1 do begin
    if i mod 4 = 0 then begin
      Inc(Line);
      Col := 0;
    end;
    Stringgrid1.Cells[Col, Line] := listbox1.Items[i];
    Inc(Col);
  end;
всем спасибо за помощь
Aleksandr69 вне форума Ответить с цитированием
Старый 10.03.2011, 19:33   #2
Aleksandr69
Пользователь
 
Регистрация: 11.12.2010
Сообщений: 71
По умолчанию из ListBox в StringGrid

Помогите такая задача из ListBox в StringGrid

в ListBox записи такого вида

ФИРМА
НОМЕР
ОПИСАНИЕ
АДРЕС
ФИРМА
НОМЕР
ОПИСАНИЕ
АДРЕС

в StringGrid четыре колонки

нужно занести записи в StringGrid

так начиная с первой строки

ФИРМА НОМЕР ОПИСАНИЕ АДРЕС
ФИРМА НОМЕР ОПИСАНИЕ АДРЕС
Aleksandr69 вне форума Ответить с цитированием
Старый 10.03.2011, 19:39   #3
MotoArhangel
Пользователь
 
Регистрация: 25.02.2011
Сообщений: 51
По умолчанию

К примеру так:
Код:
procedure TMainForm.Button1Click(Sender: TObject);
begin
  ListBox1.Items.Add(IntToStr(Random(123456)-52346));
end;

procedure TMainForm.FormCreate(Sender: TObject);
begin
  Randomize;
end;

procedure TMainForm.ClearSG;
var
  i, j: Integer;
begin
  For i := 0 to StringGrid1.ColCount - 1 do
    For j := 0 to StringGrid1.RowCount - 1 do
      StringGrid1.Cells[i, j] := '';
end;

procedure TMainForm.Button2Click(Sender: TObject);
var
  i, j: Integer;
begin
  ClearSG;
  i := 0;
  j := 0;
  While (ListBox1.Count > 0) and (j < StringGrid1.RowCount) do
    begin
      If i > StringGrid1.ColCount - 1 then
        begin
          i := 0;
          Inc(j);
        end;
      StringGrid1.Cells[i, j] := ListBox1.Items.Strings[0];
      ListBox1.Items.Delete(0);
      Inc(i);
    end;
end;
В SG можешь делать как StringGrid1.Cells[i, j], где i и j сторока и столбец, либо StringGrid1.Cols[0],StringGrid1.Cols[1] и тд. колонки и StringGrid1.Rows[0],StringGrid1.Rows[1] и тд. строки.

Код:
procedure TMainForm.Button1Click(Sender: TObject);
begin
  ListBox1.Items.Add(IntToStr(Random(123456)-52346));
end;

procedure TMainForm.FormCreate(Sender: TObject);
begin
  Randomize;
end;
Это заполнение LB произвольными значениями. Тебе же не надо. У тебя в LB уже что то есть.

Последний раз редактировалось MotoArhangel; 10.03.2011 в 19:45.
MotoArhangel вне форума Ответить с цитированием
Старый 10.03.2011, 19:41   #4
Aleksandr69
Пользователь
 
Регистрация: 11.12.2010
Сообщений: 71
По умолчанию

Сделал так работает




Код:


    for i := 0 to cxListbox1.Items.Count-1 do
    JvStringgrid1.Cells[i mod 4, i div 4] := cxlistbox1.Items[i];

только заполняет с 0 что поправить

Последний раз редактировалось Aleksandr69; 10.03.2011 в 19:43.
Aleksandr69 вне форума Ответить с цитированием
Старый 10.03.2011, 19:49   #5
MotoArhangel
Пользователь
 
Регистрация: 25.02.2011
Сообщений: 51
По умолчанию

Интересный код. Проверь как он работает )
P.S. с -1 поиграй.
MotoArhangel вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Заполнение StringGrid из ListBox c извлечением имени artemavd Общие вопросы Delphi 1 22.10.2010 08:19
как добавить в listbox файлы(пишу с помощью bassplayer)(Listbox+opendialog=play) blackstersl Общие вопросы Delphi 11 09.06.2010 13:23
при исп. combobox отображ в listbox вносить в stringgrid. twister_answer Помощь студентам 0 26.05.2010 15:16
Listbox и StringGrid alexeybest Компоненты Delphi 3 20.02.2010 14:22
Delphi:Работа с Listbox и StringGrid Shaitan Помощь студентам 2 11.11.2008 21:04