AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi myedit.SelectAll ersetzen durch (Sender as TEdit).SelectAll

myedit.SelectAll ersetzen durch (Sender as TEdit).SelectAll

Ein Thema von eddy · begonnen am 12. Dez 2007 · letzter Beitrag vom 13. Dez 2007
Antwort Antwort
Benutzerbild von eddy
eddy

Registriert seit: 3. Jan 2003
Ort: Sachsen
573 Beiträge
 
Delphi 5 Professional
 
#1

myedit.SelectAll ersetzen durch (Sender as TEdit).SelectAll

  Alt 12. Dez 2007, 17:32
Hallo Leute,

ich möchte
Delphi-Quellcode:
myedit : TEdit;

procedure TForm.Kopieren1Click(Sender: TObject);
begin
  myedit.SelectAll;
  myedit.CopyToClipboard;
end;
ersetzen durch:
Delphi-Quellcode:
procedure TForm.Kopieren1Click(Sender: TObject);
begin
  (Sender as TEdit).SelectAll;
  (Sender as TEdit).CopyToClipboard;
end;
bekomme aber immer nur: EInvalidCast - ungültige Typumwandlung.

Kann mir jemand bei der Lösung helfen?

mfg
eddy
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.537 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: myedit.SelectAll ersetzen durch (Sender as TEdit).Select

  Alt 12. Dez 2007, 17:35
Kopieren1 ist ein Button, nehme ich an. Was ist dann wohl der Sender, wenn Du diesen anklickst? Bestimmt kein Edit.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Benutzerbild von eddy
eddy

Registriert seit: 3. Jan 2003
Ort: Sachsen
573 Beiträge
 
Delphi 5 Professional
 
#3

Re: myedit.SelectAll ersetzen durch (Sender as TEdit).Select

  Alt 12. Dez 2007, 17:58
Hallo DeddyH,

ich hab' schon geahnt, daß es an einem schweren Denkfehler meinerseits lag.

Der Sender ist in der Tat ein TMenuItem, und mit Deinem Hinweis zusammen ist mir nun auch klar, warum der obige Code Unsinn ist.

Wie kann ich nun aber auf den Name des Edti-Feldes (TEdit) kommen, das unter dem entsprechenden PopUp-Menü liegt?

Hintergrund:
In der Standard-Version, also ohne eigenes PopUp-Menü auf einem Edit-Feld, gibt es ja standardmäig Ausschneiden, Kopieren, Einfügen, usw. Ich habe nun ein paar Edit-Felder, die per PopUp-Menü andere Funktionen ermöglichen sollen, wobei aber Ausschneiden, Kopieren und Einfügen so funktionieren soll, wie im Standard-PopUp-Menü.

Kannst Du mir da auch noch weiterhelfen?

mfg
eddy
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.537 Beiträge
 
Delphi 11 Alexandria
 
#4

Re: myedit.SelectAll ersetzen durch (Sender as TEdit).Select

  Alt 12. Dez 2007, 18:04
Hmmm... das PopupMenu hat doch eine Eigenschaft PopupComponent. Das sollte Dir eigentlich weiterhelfen.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Benutzerbild von eddy
eddy

Registriert seit: 3. Jan 2003
Ort: Sachsen
573 Beiträge
 
Delphi 5 Professional
 
#5

Re: myedit.SelectAll ersetzen durch (Sender as TEdit).Select

  Alt 13. Dez 2007, 00:37
Hallo DeddyH,

vielen Dank für Deine Unterstützung.

Delphi-Quellcode:
// copy1 : TMenuItem;

procedure TForm1.copy1Click(Sender: TObject);
var
  c1, c2, c3 : TComponent;
begin
  if Sender is TMenuItem then begin
    c1 := Sender as TMenuItem;
    c2 := c1.GetParentComponent;
    c3 := (c2 as TPopupMenu).PopupComponent;
    (c3 as TEdit).SelectAll;
    (c3 as TEdit).CopyToClipboard;
  end;
end;
mfg
eddy
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:58 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