Проблема решена.
Не совпадали индекс массива (начинается с 1), и цикла (начинается с 0).
Здравствуйте. Проблема со Stringgrid: при вводе в первую строку и столбец выдается сообщение debugger exception notification
[img=http://i.piccy.info/i4/c4/74/75d9d119ab857097b43621ae7a89.jpeg]
если начать цикл с единицы, то все работает, но записывается соответственно во второй столбец и, начиная со второй, строку
Код:
unit Unit3;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls, ComCtrls, TabNotBk, DB, DBTables, StdCtrls, UpDownEx,
Grids;
type
TForm3 = class(TForm)
UpDownEx1: TUpDownEx;
Label1: TLabel;
StringGrid1: TStringGrid;
procedure FormActivate(Sender: TObject);
procedure StringGrid1SelectCell(Sender: TObject; ACol, ARow: Integer;
var CanSelect: Boolean);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form3: TForm3;
lines: integer;
vaternumbers: array [1..6] of string = ('I','II','III','IV','V','VI');
implementation
uses Unit1, Unit2;
{$R *.dfm}
procedure TForm3.FormActivate(Sender: TObject);
var j3:integer;
begin
lines:=strtoint(Form2.Edit4.Text);
stringgrid1.Height:=25*lines+3;
Stringgrid1.RowCount:=lines;
with stringgrid1 do
begin
for j3:=0 to lines do cells[0,j3]:=vaternumbers[j3];
end;
end;
procedure TForm3.StringGrid1SelectCell(Sender: TObject; ACol,
ARow: Integer; var CanSelect: Boolean);
begin
if ACol = 1 then
StringGrid1.Options := StringGrid1.Options - [goEditing];
end;
end.