Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Работа с CheckBox [D7, XP]


Arm!n ©   (2010-12-29 22:21:00) 

Необходимо в программу добавить определенные условия. Допустим, имеется следующая процедура
Procedure TForm1.makestep;
function CountPrevNeighbors(const i,j:integer):integer;
  var
  L,R,U,D:integer;
begin
  result:=0;
  if i>0 then L:=i-1 else L:=boardsize-1;
  if j>0 then U:=j-1 else U:=boardsize-1;
  if i<boardsize-1 then R:=i+1 else R:=0;
  if j<boardsize-1 then D:=j+1 else D:=0;
  if Currentgrid[L,j] then inc(result);  
  if Currentgrid[i,U] then inc(result);  
  if Currentgrid[R,j] then inc(result);  
  if Currentgrid[i,D] then inc(result);  
  if Currentgrid[L,U] then inc(result);  
  if Currentgrid[R,U] then inc(result);  
  if Currentgrid[L,D] then inc(result);    
  if Currentgrid[R,D] then inc(result);  
end;

var
  i,j:integer;
  n:integer;{число соседей}
  livecell:boolean;
begin
  for i:=0 to boardsize-1 do
  for j:=0 to boardsize-1 do
  begin
    Nextgrid[i,j]:=Currentgrid[i,j];
    Livecell:=Currentgrid[i,j];  
    n:=countprevNeighbors(i,j);  
    {правила: 1.Любая живая клетка умирает, если соседей меньше двух или больше трех.
            2.Мертвая клетка, рядом с которой ровно три живые, оживает.  }
    if Livecell then
    begin
      if ((n<2) or (n>3)) then    
      begin
        nextgrid[i,j]:=false;
        stringgrid1.cells[i,j]:='';
      end;
    end
    else
    if n=3 then  
    begin
      Nextgrid[i,j]:=true;
      stringgrid1.cells[i,j]:='1';
    end;
  end;
   for i:=0 to boardsize-1 do
  for j:= 0 to boardsize-1 do
  Currentgrid[i,j]:=NextGrid[i,j];
end;

Необходимо добавить на форму компоненты, которые включали/выключали бы определенные условия. Ну, например, чтоб живая клетка не умирала при n<=2. Я так понял, нужно использовать компоненты CheckBox. Подскажите, пожалуйста, как их правильно оформить.


v_a_belousov   (2010-12-30 13:00:00) [1]


> Arm!n

Тебе вот такое надо?
http://project-w-m.narod.ru/Life.rar


Ega23   (2010-12-30 02:02:00) [2]


> Arm!n


Это типа Army In?


Германн   (2010-12-30 01:57:00) [3]

Ты заканчивай плодить ветки под "случайными" никами об одном и том же.
Лучше бы учебник прочитал.

> Необходимо добавить на форму компоненты, которые включали/выключали
> бы определенные условия. Ну, например, чтоб живая клетка
> не умирала при n<=2. Я так понял, нужно использовать компоненты
> CheckBox. Подскажите, пожалуйста, как их правильно оформить.

На такой вопрос просто не хочется отвечать.


Наверх

Титульная страница Поиск, карта сайта Написать письмо