Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 03.03.2013, 13:57   #1
ShaoKhan
Пользователь
 
Регистрация: 05.12.2011
Сообщений: 33
По умолчанию Циклы в StringGrid

Доброго времени суток!
Помогите дураку
Имеется вот такое задание: Задана матрица А= (5х5) . Сформировать матрицу В= (4х4) путем вычеркивания из матрицы А третьей строки и третьего столбца.
Сделать это нужно через StringGrid.

Вот мой код:

Код:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, Grids, StdCtrls;

type
  TForm1 = class(TForm)
    StringGrid1: TStringGrid;
    Button1: TButton;
    StringGrid2: TStringGrid;
    procedure FormCreate(Sender: TObject);
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
j,i:integer;
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
StringGrid1.Cells[0,0]:='A';
StringGrid2.Cells[0,0]:='B';

For j:=1 to 6 do
begin
StringGrid1.Cells[j,0]:=IntToStr(j);
StringGrid2.Cells[j,0]:=IntToStr(j);
For i:=1 to 6 do
StringGrid1.Cells[0,i]:=IntToStr(i);
StringGrid2.Cells[0,1]:=IntToStr(1);
StringGrid2.Cells[0,2]:=IntToStr(2);
StringGrid2.Cells[0,3]:=IntToStr(3);
StringGrid2.Cells[0,4]:=IntToStr(4);
end;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
For i:=1 to 3 do
StringGrid2.Cells[i,1]:=StringGrid1.Cells[i,1];
StringGrid2.Cells[i,1]:=StringGrid1.Cells[i,1];
For j:=1 to 3 do
StringGrid2.Cells[j,2]:=StringGrid1.Cells[j,2];
StringGrid2.Cells[j,2]:=StringGrid1.Cells[j,2];


StringGrid2.Cells[1,3]:=StringGrid1.Cells[1,4];
StringGrid2.Cells[1,4]:=StringGrid1.Cells[1,5];

StringGrid2.Cells[2,3]:=StringGrid1.Cells[2,4];
StringGrid2.Cells[2,4]:=StringGrid1.Cells[2,5];

StringGrid2.Cells[3,1]:=StringGrid1.Cells[4,1];
StringGrid2.Cells[4,1]:=StringGrid1.Cells[5,1];

StringGrid2.Cells[3,2]:=StringGrid1.Cells[4,2];
StringGrid2.Cells[4,2]:=StringGrid1.Cells[5,2];

StringGrid2.Cells[3,3]:=StringGrid1.Cells[4,4];
StringGrid2.Cells[4,3]:=StringGrid1.Cells[5,4];

StringGrid2.Cells[3,4]:=StringGrid1.Cells[4,5];
StringGrid2.Cells[4,4]:=StringGrid1.Cells[5,5];
end;

end.


Это слишком громоздко.
Подскажите, как это сделать через циклы?
ShaoKhan вне форума Ответить с цитированием
Старый 03.03.2013, 14:44   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Как вариант:
Код:
type sg=class(TCustomGrid) end;
и
Код:
sg(StringGrid2).DeleteRow(2);
sg(StringGrid2).DeleteColumn(2);
И никаких циклов не нужно.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 03.03.2013, 15:31   #3
ShaoKhan
Пользователь
 
Регистрация: 05.12.2011
Сообщений: 33
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
Как вариант:
Код:
type sg=class(TCustomGrid) end;
и
Код:
sg(StringGrid2).DeleteRow(2);
sg(StringGrid2).DeleteColumn(2);
И никаких циклов не нужно.


Подскажите, куда писать тип ?
ShaoKhan вне форума Ответить с цитированием
Старый 03.03.2013, 16:23   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Туда где описан класс формы
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

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

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
циклы в C# sti1 Помощь студентам 4 22.12.2011 23:11
циклы Katya20 Паскаль, Turbo Pascal, PascalABC.NET 0 22.12.2011 17:30
stringgrid+колесо мыши=>stringgrid.onclick aalleexxaa Общие вопросы Delphi 5 16.02.2011 16:58
синусы и ко. циклы, вроде циклы Scorch92 Паскаль, Turbo Pascal, PascalABC.NET 2 22.12.2010 19:26
Циклы - вложенны циклы? tigga Microsoft Office Excel 5 19.02.2010 23:36