冬雪雪冬 发表于 2017-8-4 22:02:06

关于数组的认识02 - 零基础入门学习Delphi 016

二维数组
定义1:
Type
数组类型名=Array[下标类型1, 下标类型2] of 基类型;
定义2:
Type
数组类型名=Array[下标类型1] of Array[下标类型2] of 基类型;
例题:学生小红和小明输入他们语数外成绩,算出总分。

使用新控件StringGrid来输入和显示表格式的数据。
放置StringGrid,并设置行列数(RowCount,ColCount),将Options的goEditing设为True,这样就可以键入数据了,form的Autosize设为True,这样窗口的大小就与StringGrid一致了,但StringGrid四周没有留白,因此先放置一个Panel,把StringGrid放到Panel中,并把Panel调整的略大。把Button放置在StringGrid的0,0格位置,并调整大小位置,使之像一个栅格。
在课后练习中,小甲鱼要大家设置StringGrid的颜色,这个Color和FixedColor很容易做到,但文字居中却做不到了,至少用SetWindowLong是无法实现的。
主要程序:
var
Form1: TForm1;
name: Array of String;
course: Array of String;


implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);

begin
//SetWindowLong(StringGrid1.Handle, GWL_STYLE, GetWindowLong(StringGrid1.Handle, GWL_STYLE) or ES_CENTER);
//StringGrid1.refresh;
inputbox(
StringGrid1.Cells := '小明';
StringGrid1.Cells := '小红';
StringGrid1.Cells := '语文';
StringGrid1.Cells := '数学';
StringGrid1.Cells := '英语';
StringGrid1.Cells := '总成绩';

end;

procedure TForm1.Button1Click(Sender: TObject);
var
i, j: Integer;
result: Array of Integer;
begin
result:= 0;
result:= 0;
for i:= 1 to 2 do
    for j:= 1 to 3 do
      result:= result + StrToInt(StringGrid1.cells);
StringGrid1.cells:= IntToStr(Result);
StringGrid1.cells:= IntToStr(Result);



end;

13328593595 发表于 2023-8-16 21:42:09

{:10_257:}
页: [1]
查看完整版本: 关于数组的认识02 - 零基础入门学习Delphi 016