Delphi精确筛选列表中的一条信息编辑后显示在另一页面上

delphi在一个会员信息列表中添加一个input控件,确认控件和取消控件,input控件中的值等于列表中的会员号时刷新页面,只显示包含这个会员号的那条信息,选中这条信息,在input控件中输入金额,通过T键可更改这个会员的消费金额,编辑完这条信息后点确定显示在另一个页面上,点取消退出当前页 应该怎么去写,请各位帮忙解答,感谢

参考如下demo,根据自己的业务进行修改

unit Unit1;

interface

uses
  Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
  Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Vcl.Grids;

type
  TForm1 = class(TForm)
    StringGrid1: TStringGrid;
    Button1: TButton;
    Edit1: TEdit;
    Button2: TButton;
    Button3: TButton;
    procedure FormCreate(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    procedure StringGrid1SelectCell(Sender: TObject; ACol, ARow: Integer;
      var CanSelect: Boolean);
    procedure Edit1KeyPress(Sender: TObject; var Key: Char);
    procedure Button2Click(Sender: TObject);
    procedure Button3Click(Sender: TObject);
  private
    { Private declarations }
    FSelectedRow: Integer;
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var
  I: Integer;
begin
  // 添加input控件
  StringGrid1.ColCount := 3;
  StringGrid1.Cells[0, 0] := '会员号';
  StringGrid1.Cells[1, 0] := '姓名';
  StringGrid1.Cells[2, 0] := '消费金额';
  for I := 1 to 10 do
  begin
    StringGrid1.RowCount := I + 1;
    StringGrid1.Cells[0, I] := '100' + IntToStr(I);
    StringGrid1.Cells[1, I] := '会员' + IntToStr(I);
    StringGrid1.Cells[2, I] := '0';
  end;
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
  // 确定操作
  StringGrid1.Cells[2, FSelectedRow] := Edit1.Text;
  ShowMessage('保存成功!');
end;

procedure TForm1.Button3Click(Sender: TObject);
begin
  // 取消操作
  Edit1.Text := '';
  StringGrid1.Row := FSelectedRow;
end;

procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
  // 通过T键更改消费金额
  if Key = 'T' then
  begin
    StringGrid1.Cells[2, FSelectedRow] := Edit1.Text;
    ShowMessage('修改成功!');
  end;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
  // 初始化
  FSelectedRow := 0;
end;

procedure TForm1.StringGrid1SelectCell(Sender: TObject; ACol, ARow: Integer;
  var CanSelect: Boolean);
begin
  // 选中信息
  FSelectedRow := ARow;
  Edit1.Text := StringGrid1.Cells[2, ARow];
end;

end.