detail.pas

来自「我自己用的Delphi函数单元 具体说明见打包文件的HELP目录下面」· PAS 代码 · 共 91 行

PAS
91
字号
unit Detail;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  StdCtrls, Buttons, ExtCtrls, comctrls;

type
  TDetailForm = class(TForm)
    pnlTitle: TPanel;
    pnlCommand: TPanel;
    memMessage: TMemo;
    cmdOK: TBitBtn;
    cmdPrev: TBitBtn;
    cmdNext: TBitBtn;
    procedure FormShow(Sender: TObject);
    procedure cmdPrevClick(Sender: TObject);
    procedure cmdNextClick(Sender: TObject);
  private
    { Private declarations }
    FListView : TListView;
    FListItem : TListItem;
    procedure SetListView(oListView : TListView);
    procedure GetDebugMessage(oList : TListItem);
  public
    { Public declarations }
    property ListView: TListView read FListView write SetListView;
  end;

var
  DetailForm: TDetailForm;

implementation

{$R *.DFM}

procedure TDetailForm.SetListView(oListView : TListView);
begin
    FListView := oListView;
end;

procedure TDetailForm.GetDebugMessage(oList:TListItem);
begin
    memMessage.Clear;
    pnlTitle.Caption:='';
    if oList = nil then Exit;
    pnlTitle.Caption:='序号:'+oList.Caption+' , 时间:'+oList.SubItems[0];
    memMessage.Lines.Add(oList.SubItems[2]);
end;

procedure TDetailForm.FormShow(Sender: TObject);
begin
    cmdNext.Enabled := True;
    cmdPrev.Enabled := True;
    FListItem:=FListView.Selected;
    GetDebugMessage(FListItem);
end;

procedure TDetailForm.cmdPrevClick(Sender: TObject);
var
    oList: TListItem;
begin
    oList := FListView.GetNextItem(FListItem, sdAbove,[isNone]);
    if oList =nil then
    begin
        cmdPrev.Enabled := False;
        Exit;
    end;
    cmdNext.Enabled := True;
    FListItem := oList;
    GetDebugMessage(FListItem);
end;

procedure TDetailForm.cmdNextClick(Sender: TObject);
var
    oList: TListItem;
begin
    oList := FListView.GetNextItem(FListItem, sdBelow,[isNone]);
    if oList =nil then
    begin
        cmdNext.Enabled := False;
        Exit;
    end;
     cmdPrev.Enabled := True;
    FListItem := oList;
    GetDebugMessage(FListItem);
end;

end.

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?