Страница 3 из 4

Re: StringGrid

Добавлено: 12 янв 2007, 04:58
SergeyS
Что ты делаешь с TStringGrid? В какой момент ты хочешь чтобы скролы двигались? Когда изменяешь значение в ячейке? Когда делаешь ячейку активной? Когда добавляешь строку?

Re: StringGrid

Добавлено: 12 янв 2007, 13:50
matroskin
SergeyS писал(а):Что ты делаешь с TStringGrid? В какой момент ты хочешь чтобы скролы двигались? Когда изменяешь значение в ячейке? Когда делаешь ячейку активной? Когда добавляешь строку?
в стринггрид у меня добавляются данные (довольно много)
да, когда добавляется строка!
и чтобы она видна была а не уходила вниз (когда их много) :)

Re: StringGrid

Добавлено: 12 янв 2007, 20:05
SergeyS
попробуй так:

Код: Выделить всё

StringGrid1.TopRow := StringGrid1.RowCount - StringGrid1.VisibleRowCount;

Re: StringGrid

Добавлено: 16 янв 2007, 13:54
matroskin
SergeyS писал(а):попробуй так:

Код: Выделить всё

StringGrid1.TopRow := StringGrid1.RowCount - StringGrid1.VisibleRowCount;
да, пасибо, именно оно=)

Re: StringGrid

Добавлено: 08 фев 2007, 15:24
matroskin
как нить можно оптимизировать этот код

Код: Выделить всё

XLApp.Workbooks[1].WorkSheets[2].name:='2';
      for i:= 0 to Form1.strngrd2.ColCount-1 do
       for m:= 0 to Form1.strngrd2.RowCount-1 do
           begin
              XLApp.worksheets[2].Cells[m+1, i+1].value:=Form1.strngrd2.Cells[i,m];
           end;
а то Stringgid из нескольких тысяц строк сохранияется в Excel несколько минут.. :(

Re: StringGrid

Добавлено: 10 фев 2007, 04:43
SergeyS
&quot писал(а):а то Stringgid из нескольких тысяц строк сохранияется в Excel несколько минут..
Если работать с Excel как с OLE объектом, то никак. Так медленно и будет (разве что сказать Excel.ScreenUpdating := False на время заполнения. Ускорит но не намного)

Я применяю использую следующую методику: модифицирую непосредственно сам файл сохранённый в XML формате. Но к сожалению такой формат понимает только Office XP, 2003 и 2007 (а ещё и OpenOffice :) .

Можно попробовать формировать HTML файл и пробовать открывать его в Excel... не пробовал...

Re: StringGrid

Добавлено: 12 фев 2007, 17:15
Игорь Акопян
а варианты не быстрее пишутся? я правда многотысячные выгрузки не делаю...

Re: StringGrid

Добавлено: 14 фев 2007, 12:38
matroskin
SergeyS писал(а):Если работать с Excel как с OLE объектом, то никак. Так медленно и будет (разве что сказать Excel.ScreenUpdating := False на время заполнения. Ускорит но не намного)

Я применяю использую следующую методику: модифицирую непосредственно сам файл сохранённый в XML формате. Но к сожалению такой формат понимает только Office XP, 2003 и 2007 (а ещё и OpenOffice :) .

Можно попробовать формировать HTML файл и пробовать открывать его в Excel... не пробовал...

а можно поподробней на счет xml? :)

Собственные числа и вектора методом Гаусса

Добавлено: 18 май 2009, 12:02
oke
Ктонибудь может мне помочь с этим,а то я полный профан в этом деле. Пытался что-то написать,ничего не получается.У когонить есть готовый код?Очень буду благодарен.
P.S.Я застрял на этом куске :
Этот кусок должен делить первую строчку на первый элемент.
У меня делиться только первый элемент.Может я гдето что-то проглядел?Укажите пожалуйста,а то я уже 10 раз всё проверял.

Код: Выделить всё

i:=-1;p:=0;
While i<=StringGrid1.ColCount-1 do
begin
inc(i);
d:=StrToFloat(StringGrid1.Cells[i,j]);
dd:=StrToFloat(StringGrid1.Cells[p,j]);
st:=FloatToStr(d/dd);
StringGrid1.Cells[i,j]:=st;//FloatToStr(StrToInt(StringGrid1.Cells[i,j])/ StrToFloat(StringGrid1.Cells[p,j])) ;
end; 

Re: StringGrid

Добавлено: 18 май 2009, 16:11
Игорь Акопян
а хде J? и индексация Cells идёт [строка, столбец] (вроде...)