![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
|
|
#1
|
|||
|
|||
|
Проблема решена.
Не совпадали индекс массива (начинается с 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.Последний раз редактировалось Bespontovyi pirogok, 16.11.2009 в 00:18. Причина: Проблема решена |
|
#2
|
||||
|
||||
|
А почему массив не объавить так...
Код:
vaternumbers: array [0..5] of string = ('I','II','III','IV','V','VI'); |
|
#3
|
|||
|
|||
|
чтобы не выравнивать по центру в ячейке.
спасибо |