![]() |
Windows Zwischenablage-fenster aufrufen?
Hallo :hi:
mal wieder ich :-) vollgendes ,ich würde gerne das von Windows bekannte (Zwischenablage) Popupmenu aufrufen! wie der einer Memo! Wer hat da einen Rat? Grüße ,Tino |
Welches PopupMenu Meinst du? Das des Explorers oder welches ?
|
Nein der von der Memo oder Edit komponente unter Delphi!
Gruß ,Tino |
Beim Edit und Memo ist das automatisch dabei, dafür sorgt Windows. Brauchst du es bei einer anderen Komponenete mußt du es selber implementieren.
|
Ja ich brauch es für die Kompo. SynEdit ,aber wie geht das?
|
Erstell ein Popup-Menü, programmier es und dann weist du es im OI dem SynEdit zu. Ich kenne SynEdit nicht, aber es sollte die Eigenschaft haben, wie jede andere Komponente auch.
|
Also wenn du ein Popupmenu so erstellst( das ist das form als Text):
Delphi-Quellcode:
dann kannst du mit :
object PopupMenu1: TPopupMenu
Images = ImageList1 OwnerDraw = True OnPopup = Bearbeiten1Click Left = 477 Top = 79 object Ausschneiden2: TMenuItem Caption = '&Ausschneiden' SubMenuImages = ImageList1 OnClick = Ausschneiden1Click end object Kopieren2: TMenuItem Caption = '&Kopieren' OnClick = Kopieren1Click end object Einfgen2: TMenuItem Caption = '&Einfügen' OnClick = Einfgen1Click end object Lschen2: TMenuItem Caption = 'Löschen' OnClick = Lschen1Click end end
Delphi-Quellcode:
wenn man das Popupmenu aktiviert die Punkte disablen und enablen!
procedure TForm1.Bearbeiten1Click(Sender: TObject);
var HasSelection: Boolean; begin Einfgen1.Enabled := Clipboard.HasFormat(CF_TEXT); Einfgen2.Enabled := Einfgen1.Enabled; HasSelection := richedit1.SelLength > 0; Ausschneiden1.Enabled := HasSelection; Ausschneiden2.Enabled := HasSelection; Kopieren1.Enabled := HasSelection; Kopieren2.Enabled := HasSelection; Lschen1.Enabled := HasSelection; Lschen2.Enabled := HasSelection; end; Und dann musst du noch die OnClick-Prozeduren einfügen:
Delphi-Quellcode:
Isch nen bissle verwirrend, wenn du nen Problem damit hasch dann sags.
procedure TForm1.Lschen1Click(Sender: TObject);
begin richedit1.ClearSelection; end; procedure TForm1.Einfgen1Click(Sender: TObject); begin richedit1.PasteFromClipboard; end; procedure TForm1.Kopieren1Click(Sender: TObject); begin richedit1.CopyToClipboard; end; procedure TForm1.Ausschneiden1Click(Sender: TObject); begin richedit1.CutToClipboard; end; |
erstmal großen dank euch ,wenn ich was neues habe schreib ich
Grüße ,Tino |
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:52 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz