Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 06.10.2012, 13:57
Елена Ивановна Елена Ивановна вне форума
Прохожий
 
Регистрация: 06.10.2012
Сообщения: 1
Репутация: 10
По умолчанию Обновление StringGrid

Уважаемые форумчане, помогите разрешить проблему.

В динамический массив (объявлен глобальным) считываются значения из Ексель:
Код:
procedure Load_values (var str: string; a: Tarray);
var
 Excel: variant;
  i, j, counter: word;
begin
     Excel := CreateOleObject('Excel.Application');
     Excel.Workbooks.Open(str);
   //  Excel.Visible:=True;
     i:=1;
     counter:=0;
     while Excel.Sheets[1].Cells[i,1].Text <> '' do
        begin
            inc(i);
            inc(counter);
        end;
     for i:=0 to 2 do
        SetLength(arr_view[i], counter);
     for i:=0 to counter-1 do
        begin
            arr_view[0, i]:=StrToInt(Excel.Sheets[1].Cells[i+1,1].Text);
            arr_view[1, i]:=StrToInt(Excel.Sheets[1].Cells[i+1,2].Text);
            arr_view[2, i]:=StrToInt(Excel.Sheets[1].Cells[i+1,3].Text);
        end;
     Excel.Quit;
end;

И отображаются в StingGrid:
Код:
        begin
            with View_Examples do
                begin
                    RowCount:=length(arr_view[0])+1;
                    ColCount:=4;
                     for i:=0 to RowCount do
                        Rows[i].Clear;
                        Cells[1,0]:='X1';
                        Cells[2,0]:='X2';
                        Cells[3,0]:='Y';
                     for i:=1 to RowCount-1 do
                        Cells[0,i]:=IntToStr(i);
                     for i:=1 to 3 do
                        for j:=1 to RowCount do
                            Cells[i,j]:=IntToStr(arr_view[i-1, j-1]);
                end;
        end

Если выбрать другой экселевсий файл (через диалоги), StringGrid все равно отображает первоначальную выборку Как обновить содержимое? Заранее спасибо!
Ответить с цитированием
  #2  
Старый 06.10.2012, 14:38
Аватар для poli-smen
poli-smen poli-smen вне форума
Профессионал
 
Регистрация: 06.08.2012
Адрес: Кривой Рог
Сообщения: 1,791
Версия Delphi: Delphi 7, XE2
Репутация: 4415
Вопрос

Цитата:
Сообщение от Елена Ивановна
Если выбрать другой экселевсий файл (через диалоги), StringGrid все равно отображает первоначальную выборку Как обновить содержимое? Заранее спасибо!
А почему у меня всё нормально обновляется?
Ответить с цитированием
Ответ


Delphi Sources

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

Расширенный поиск
Опции просмотра
Комбинированный вид Комбинированный вид

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 06:07.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter