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

Delphi Sources



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

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 19.04.2010, 10:36
666triffid666 666triffid666 вне форума
Прохожий
 
Регистрация: 15.04.2010
Сообщения: 16
Репутация: 10
Вопрос Подпрограммы и таблицы

Требуется сделать подпрограмму кот проверяла бы значения ячеек таблиц
Дайте ссыку как правильно создать свою подпрограмму
и как сделать чтобы цикл
типа :
Код:
for i:= 1 to 4 do
  begin
  for j:= 1 to 4 do
  begin
    if cells[i,j]='0' then f:=f+1
  else
  if cells[i,j]='1' then g:=g+1
  end;
  end;
  if (f=0) and (g>0)  then begin Edit2.Text:='1'
Admin: Не забываем про теги!

Проверял последовательно все таблицы
т.к. пока он проверяет только 1 через
with stringgrid* do

Последний раз редактировалось Admin, 19.04.2010 в 10:45.
Ответить с цитированием
  #2  
Старый 19.04.2010, 11:24
Аватар для TOJluK
TOJluK TOJluK вне форума
Местный
 
Регистрация: 25.02.2009
Адрес: Минск
Сообщения: 551
Версия Delphi: 2007
Репутация: 110
По умолчанию

передавай в процедуру TObject
Код:
procedure STR_GRD_WORK(sender:TOBject);
var i,j:integer;
begin
with (sender as TStringGrid) do
begin
for i:= 1 to 4 do
  begin
  for j:= 1 to 4 do
  begin
    if cells[i,j]='0' then f:=f+1
  else
  if cells[i,j]='1' then g:=g+1
  end;
  end;
end;
end;
Ну, а в процедуру можно StringGrid передавать в цикле при помощи FindComponent
Ответить с цитированием
  #3  
Старый 19.04.2010, 19:38
666triffid666 666triffid666 вне форума
Прохожий
 
Регистрация: 15.04.2010
Сообщения: 16
Репутация: 10
По умолчанию

ммм а как будет выглядеть переход от одной таблицы к другой
у меня их 8 и эту процедуру (так просто ГАРАЗДО больше )
нужно применить в каждой
и результат с каждой потом в Edit 1-8 поместить
Ответить с цитированием
  #4  
Старый 20.04.2010, 11:30
Аватар для TOJluK
TOJluK TOJluK вне форума
Местный
 
Регистрация: 25.02.2009
Адрес: Минск
Сообщения: 551
Версия Delphi: 2007
Репутация: 110
По умолчанию

если каждому гриду соотв-ет свой эдит
Код:
procedure TForm.STR_GRD_WORK(grd:string);
var i,j,f,g:integer;
begin
f:=0;
g:=0;
with TStringGrid(FindComponent('StringGrid' + grd)) do
 begin
 for i:= 1 to 4 do
  begin
  for j:= 1 to 4 do
   begin
   if cells[i,j]='0' then f:=f+1
    else
     if cells[i,j]='1' then g:=g+1
   end;
  end;
 end;
TEdit(FindComponent('Edit' + grd)).Text:=IntToStr(f)+','+IntToStr(g);
end;
вызывать так:
Код:
for i:=1 to 8 do 
 STR_GRD_WORK(IntToStr(grd));
должно работать
Ответить с цитированием
Ответ


Delphi Sources

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

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

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

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


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


 

Сайт

Форум

FAQ

Соглашения

Прочее

 

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