小编Bil*_*orn的帖子

德尔福的记录

关于德尔福记录的一些问题:

  1. 由于记录几乎像类,为什么不只使用类而不是记录?
  2. 理论上,当记录由变量声明时,将为记录分配内存; 但是,以后如何释放记忆?
  3. 我可以理解指向记录的指针到列表对象的实用程序,但是使用Generics Containers(TList<T>),是否需要使用指针呢?如果没有,如何删除/释放每个记录到通用容器?如果我想将特定记录删除到通用容器中,该怎么做?

delphi records

14
推荐指数
3
解决办法
6192
查看次数

使用Delphi在运行时创建TWebBrowser

我有一个TWebBrowser对象,它在运行时创建并在后台使用,即不可见.问题是像OnDocumentComplete这样的事件在Delphi2009中不起作用或没有触发.有什么建议?

procedure TfrmMain.FormCreate(Sender: TObject);
begin
  FWebBrowser:= TWebBrowser.Create(Self);
  FWebBrowser.RegisterAsBrowser:= True;
  FWebBrowser.OnDocumentComplete:= WhenDocIsCompleted;
end;

procedure TfrmMain.WhenDocIsCompleted(ASender: TObject; const pDisp: IDispatch;
  var URL: OleVariant);
begin
  ShowMessage('Doc is completed!');
end;
Run Code Online (Sandbox Code Playgroud)

Navigate和Navigate2之间有什么区别吗?我如何在这里启用cookie?

提前致谢.

delphi runtime twebbrowser

5
推荐指数
2
解决办法
9464
查看次数

Delphi中的通用容器

我正在尝试这样做:

   type
      TItemRec = record
        Sender    : TAction;
        OwnerPack : HModule;
        ChildForm : TForm;
      end;
      TRecList = TList<TItemRec>;

      THelperList = class helper for TRecList
        function FindSenderIndex(ASender: TAction): Int16;
      end;
   var
      MyObj : TRecList;
Run Code Online (Sandbox Code Playgroud)

FindSenderIndex其中功能(仍然实现它)将返回项目的索引ASender与配衬MyObj中[I] .Sender.但是在编译时我收到此错误消息:"E2086 Type 'TList<T>' is not yet completely defined"

我做得不好?提前致谢.

Pdta:您能给我一些关于如何使用Object Containers的好例子(TObjectList<T:class>=class(TList<T>))吗?

delphi generics containers

2
推荐指数
1
解决办法
1837
查看次数

Delphi中的记录和通用容器

我对Generic Containers(TList)的记录略微发疯(唱着Queen的歌).首先,看看这段代码:

  TItemRec = record
  private
    FSender    : TAction;
    FOwnerPack : HModule;
    FDockPanel : TdxDockPanel;
    procedure SetDockPanel(const Value: TdxDockPanel);
    procedure SetOwnerPack(const Value: HModule);
    procedure SetSender(const Value: TAction);
  public
    property Sender: TAction read FSender write SetSender;
    property OwnerPack: HModule read FOwnerPack write SetOwnerPack;
    property DockPanel: TdxDockPanel read FDockPanel write SetDockPanel;
  end;

  TPackRec = record
  private
    FHandle  : HModule;
    var FCounter : Int16;
    procedure SetCounter(const Value: Int16);
    procedure SetHandle(const Value: HModule);
  public
    property Handle: HModule read FHandle write SetHandle;
    property Counter: Int16 …
Run Code Online (Sandbox Code Playgroud)

delphi generics containers records

2
推荐指数
1
解决办法
2198
查看次数

标签 统计

delphi ×4

containers ×2

generics ×2

records ×2

runtime ×1

twebbrowser ×1