Hallo,
ich möchte eine Bitmap eines Image.Picture in die Zwischenablage kopieren. So, dass ich dann bei Word nach Druck auf CONTROL+V das Bild sehe. Ich mache das bisher so: (abgewandelte Version der HELPFILE, da das Beispiel nicht funktionierte)
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16:
| procedure TForm1.SpeedButton5Click(Sender: TObject); var MyFormat : Word; Bitmap : TBitMap; AData,APalette : THandle; MyPalette: HPALETTE; begin Bitmap := TBitmap.Create; try Bitmap := Image1.Picture.Bitmap; Bitmap.SaveToClipBoardFormat(MyFormat,AData,MyPalette); ClipBoard.SetAsHandle(MyFormat,AData); finally Bitmap.Free; end; end; |
Funktioniert soweit, bei Word erscheint es. Dann rufe ich das Programm auf, zwei Fehlermeldungen, das Bild ist plötzlich leer und nach beenden des Programmes gibt es noch eine Fehlermeldung.
Weiß jemand, wie man das besser machen kann? Clipbrd ist eingebunden.
Beim Beispiel hat der letzte Typ APalette (THandle) nicht übereingestimmt. Deshalb habe ich noch MyPalette definiert.