本例效果图:
--------------------------------------------------------------------------------
代码文件:
--------------------------------------------------------------------------------
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Grids;
type
TForm1 = class(TForm)
ListBox1: TListBox;
StringGrid1: TStringGrid;
procedure FormCreate(Sender: TObject);
procedure ListBox1Click(Sender: TObject);
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.FormCreate(Sender: TObject);
var
i: Integer;
begin
ListBox1.Align := alLeft;
i := 0;
while i < 65535 do
begin
ListBox1.Items.Add(Format('#%d - #%d', [i, i+255]));
Inc(i, 255);
end;
with StringGrid1 do
begin
Align := alClient;
DefaultColWidth := 24;
DefaultRowHeight := 24;
RowCount := 16;
ColCount := 16;
FixedCols := 0;
FixedRows := 0;
Font.Size := 13;
Self.ClientWidth := ListBox1.Width + (DefaultColWidth + 1) * 16 + 4;
Self.ClientHeight := (DefaultRowHeight + 1) * 16 + 4;
end;
end;
procedure TForm1.ListBox1Click(Sender: TObject);
var
w,i: Word;
begin
w := ListBox1.ItemIndex * 255;
for i := 0 to 255 do
StringGrid1.Cells[i div 16, i mod 16] := Char(w + i);
end;
end.
--------------------------------------------------------------------------------
窗体文件:
--------------------------------------------------------------------------------
object Form1: TForm1
Left = 0
Top = 0
Caption = 'Form1'
ClientHeight = 328
ClientWidth = 497
Color = clBtnFace
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'Tahoma'
Font.Style = []
OldCreateOrder = False
OnCreate = FormCreate
PixelsPerInch = 96
TextHeight = 13
object StringGrid1: TStringGrid
Left = 160
Top = 8
Width = 320
Height = 120
TabOrder = 0
end
object ListBox1: TListBox
Left = 8
Top = 8
Width = 137
Height = 97
ItemHeight = 13
TabOrder = 1
OnClick = ListBox1Click
end
end
--------------------------------------------------------------------------------
代码文件:
--------------------------------------------------------------------------------
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Grids;
type
TForm1 = class(TForm)
ListBox1: TListBox;
StringGrid1: TStringGrid;
procedure FormCreate(Sender: TObject);
procedure ListBox1Click(Sender: TObject);
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.FormCreate(Sender: TObject);
var
i: Integer;
begin
ListBox1.Align := alLeft;
i := 0;
while i < 65535 do
begin
ListBox1.Items.Add(Format('#%d - #%d', [i, i+255]));
Inc(i, 255);
end;
with StringGrid1 do
begin
Align := alClient;
DefaultColWidth := 24;
DefaultRowHeight := 24;
RowCount := 16;
ColCount := 16;
FixedCols := 0;
FixedRows := 0;
Font.Size := 13;
Self.ClientWidth := ListBox1.Width + (DefaultColWidth + 1) * 16 + 4;
Self.ClientHeight := (DefaultRowHeight + 1) * 16 + 4;
end;
end;
procedure TForm1.ListBox1Click(Sender: TObject);
var
w,i: Word;
begin
w := ListBox1.ItemIndex * 255;
for i := 0 to 255 do
StringGrid1.Cells[i div 16, i mod 16] := Char(w + i);
end;
end.
--------------------------------------------------------------------------------
窗体文件:
--------------------------------------------------------------------------------
object Form1: TForm1
Left = 0
Top = 0
Caption = 'Form1'
ClientHeight = 328
ClientWidth = 497
Color = clBtnFace
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'Tahoma'
Font.Style = []
OldCreateOrder = False
OnCreate = FormCreate
PixelsPerInch = 96
TextHeight = 13
object StringGrid1: TStringGrid
Left = 160
Top = 8
Width = 320
Height = 120
TabOrder = 0
end
object ListBox1: TListBox
Left = 8
Top = 8
Width = 137
Height = 97
ItemHeight = 13
TabOrder = 1
OnClick = ListBox1Click
end
end