Текущий архив: 2009.05.10;
Скачать: CL | DM;
Вниз
Перенос елементов из ListBox в StringGrid Найти похожие ветки
← →
R0k © (2009-03-29 14:28) [0]Здравствуйте! Не могу понять как перенести елементы из lb в sg.
Хотя бы принцип.
В листбоксе находятся следующие элементы:
5 //кол-во учеников
3 //кол-во оценок у каждого ученика
Antoine
50
40
43
Claudine
28
40
32
Luc
26
43
55
← →
Palladin © (2009-03-29 14:54) [1]
Var
i,c:Integer;
nLCount,nSCount:Integer;
nLCount:=StrToInt(lb.Items[0]);
nSCount:=StrToInt(lb.Items[1]);
sg.RowsCount:=nSCount+1;
sg.FixedRows:=1;
sg.ColsCount:=nLCount;
sg.FixedCols:=0;
For i:=0 to nLCount-1 Do
Begin
sg.Cells[i,0]:=lb.Items[i*4];
For j:=0 to SCount-1 Do
sg.Cells[i,j]:=lb.Items[i*4+j];
End;
← →
Palladin © (2009-03-29 14:56) [2]есть ошибка... сам найдешь...
← →
R0k © (2009-03-29 14:58) [3]Огромное спасибо!!!
← →
R0k © (2009-03-29 16:42) [4]Да пришлось чуток покумекать, зато все получилось. Выкладываю 100% работающий, еще теплый :) код переноса инфы из ListBox в StringGrid. Palladin респект.
procedure Tfrm.FormCreate(Sender: TObject);
begin
sg.rowcount:=strtoint(lb.Items[0]);
sg.ColCount:=strtoint(lb.Items[1])+1;
end;
procedure Tfrm.btn_transfertClick(Sender: TObject);
var i,j,ne,nt:integer;
begin
ne:=strtoint(lb.Items[0]);
nt:=strtoint(lb.Items[1]);
for i:=0 to ne-1 do
begin
sg.Cells[0,i]:=lb.Items[(i*4)+2];
for j:=1 to nt do
sg.Cells[j,i]:=lb.items[(i*4)+(j+2)];
end;
end;
← →
Palladin © (2009-03-29 16:43) [5]ты повторил мою ошибку умножения на 4, с чего ты взял что на 4
← →
KilkennyCat © (2009-03-29 16:56) [6]strtoint - это вообще-то надо проверять, либо strtointdef использовать
Страницы: 1 вся ветка
Текущий архив: 2009.05.10;
Скачать: CL | DM;
Память: 0.47 MB
Время: 0.007 c