Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Die Delphi-IDE (https://www.delphipraxis.net/62-die-delphi-ide/)
-   -   Wie Delphi IDE Zwischenablage reproduzieren ? (https://www.delphipraxis.net/42978-wie-delphi-ide-zwischenablage-reproduzieren.html)

Orbmu2k 26. Mär 2005 22:07


Wie Delphi IDE Zwischenablage reproduzieren ?
 
Wie kann man die Zwischenablage des Designers der Delphi IDE reproduzieren ?

Ich möchte in meinem Programm Objekte so in die Zwischenablage auslagern das ich sie in ein Formular im Delphi Designer einfügen kann.

das sieht so aus in der Zwischenablage:
Delphi-Quellcode:
object BitBtn1: TBitBtn
  Left = 40
  Top = 24
  Width = 97
  Height = 25
  Caption = 'BitBtn1'
  TabOrder = 0
  Glyph.Data = {
    36030000424D3603000000000000360000002800000010000000100000000100
    18000000000000030000120B0000120B00000000000000000000FF00FFFF00FF
    FF00FFFF00FFFF00FF044906055B09066C0C066C0C055E0A044C06FF00FFFF00
    FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FF05600905600908911309B01809
    B31A09B31909B11907961405680C05680CFF00FFFF00FFFF00FFFF00FFFF00FF
    0A6A150A7F150BB61C09B91A08B41807B21609B31909B41909B81A09B91A0783
    10044D06FF00FFFF00FFFF00FF0B6A150F852216BD3411B7270BB21C07B11608
    B11709B21909B21909B21909B41909BA1A07841006670CFF00FFFF00FF0B6A15
    20BE491BBD4014B7300AB21F63CE6DEEFAEFDFF5E128BC3609B21909B21909B3
    1909BA1A06670CFF00FF0872101B9A3A2AC65B1DBB450EB4255BCC66F7FDF8FF
    FFFF9ADFA011B42009B21909B21909B21909B81A089413045D090872102AB65B
    2CC56522BD4D5CCC69F6FCF7FDFEFD8EDB9509B21A09B21909B21909B21909B2
    1909B51A08AB17045D090F821C37C26C33C76C8ADDA8F4FCF6FFFFFFF9FDFAC7
    EED2C4EDCCBFEBC3BFEBC3C0EBC4C2ECC608B41909B31905650B138D2358CC83
    42C977C9EFD8FFFFFFFFFFFFFDFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
    FF0AB41A09B319066D0D0F911D6FD2935FD38D44C977B7EACBFFFFFFFBFEFC9A
    E2B458CD795CCE765CCD765CCD735BCD7211B82B08B11905610A0F911D67CC83
    9BE5BA38C67032C36AAAE6C1FFFFFFE9F9EF6AD38E21BD4D1EBC491EBC471AB9
    3E10BA2908A31705610AFF00FF25AE39BCEDD282DBA428C06331C268A4E4BDFF
    FFFFF7FDF945C86E20BB4A1DBA4118B73614C0300A8517FF00FFFF00FF25AE39
    71D28CD2F4E180DAA336C46D31C36AAAE6C1BDECCF35C46924BE5623BC4D1FC1
    4616AE340A8517FF00FFFF00FFFF00FF25AE3984D89FDBF7EAAFE8C66BD49352
    CC8144C97849CA7B48CB7839CB6A21B6490F7C1FFF00FFFF00FFFF00FFFF00FF
    FF00FF25AE3925AE39ADE8C5CCF2DEBAEDD1A6E7C291E2B364D4922FB1572FB1
    57FF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FF32B74E25AE3925
    AE3925AE3925AE3924A342FF00FFFF00FFFF00FFFF00FFFF00FF}
end
irgendwelche ideen ?

Robert_G 26. Mär 2005 22:22

Re: Wie Delphi IDE Zwischenablage reproduzieren ?
 
Dazu sollte das Delphi Streaming System genau das richtige sein. TWriter wäre ein passabler Anfangspunkt. ;)

Orbmu2k 26. Mär 2005 22:31

Re: Wie Delphi IDE Zwischenablage reproduzieren ?
 
Super Danke genau das was ich gesucht habe ! :)

Delphi-Quellcode:
function ComponentToString(Component: TComponent): string;

var
  BinStream:TMemoryStream;
  StrStream: TStringStream;
  s: string;
begin
  BinStream := TMemoryStream.Create;
  try
    StrStream := TStringStream.Create(s);
    try
      BinStream.WriteComponent(Component);
      BinStream.Seek(0, soFromBeginning);
      ObjectBinaryToText(BinStream, StrStream);
      StrStream.Seek(0, soFromBeginning);
      Result:= StrStream.DataString;
    finally
      StrStream.Free;

    end;
  finally
    BinStream.Free
  end;
end;


Alle Zeitangaben in WEZ +1. Es ist jetzt 14:51 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz