54 lines
1.1 KiB
ObjectPascal
54 lines
1.1 KiB
ObjectPascal
unit ClrDemoGuidForm;
|
|
|
|
interface
|
|
|
|
uses
|
|
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
|
|
ComCtrls, StdCtrls, Buttons, JclCLR;
|
|
|
|
type
|
|
TfrmGuid = class(TForm)
|
|
btnOK: TBitBtn;
|
|
lstGuids: TListView;
|
|
procedure lstGuidsData(Sender: TObject; Item: TListItem);
|
|
private
|
|
FStream: TJclCLRGuidStream;
|
|
procedure ShowGuids(const AStream: TJclCLRGuidStream);
|
|
public
|
|
class procedure Execute(const AStream: TJclCLRGuidStream);
|
|
end;
|
|
|
|
implementation
|
|
|
|
{$R *.DFM}
|
|
|
|
uses
|
|
ComObj;
|
|
|
|
{ TfrmGuid }
|
|
|
|
class procedure TfrmGuid.Execute(const AStream: TJclCLRGuidStream);
|
|
begin
|
|
with TfrmGuid.Create(nil) do
|
|
try
|
|
ShowGuids(AStream);
|
|
ShowModal;
|
|
finally
|
|
Free;
|
|
end;
|
|
end;
|
|
|
|
procedure TfrmGuid.ShowGuids(const AStream: TJclCLRGuidStream);
|
|
begin
|
|
FStream := AStream;
|
|
lstGuids.Items.Count := FStream.GuidCount;
|
|
end;
|
|
|
|
procedure TfrmGuid.lstGuidsData(Sender: TObject; Item: TListItem);
|
|
begin
|
|
Item.Caption := IntToStr(Item.Index);
|
|
Item.SubItems.Add(GUIDToString(FStream.Guids[Item.Index]));
|
|
end;
|
|
|
|
end.
|