Entwickler-Ecke
Grafische Benutzeroberflächen (VCL & FireMonkey) - Editfeld wie bei "Datei umbenennen"
longhugo - Mo 07.11.05 13:24
Titel: Editfeld wie bei "Datei umbenennen"
Hallo Leute,
ich hab zwar mehrfach gesucht (und nix gefunden) aber vielleicht gab's das Thema ja
schonmal: Ich habe da ein Memo (oder RichEdit - egal) und dort ein Wort selektiert.
Jetzt rechte Maustaste.Click -> kleines Texteingabefeld geht auf (z.Zt als eigenständige
Form mit einem Edit Control) und neues Wort wird eingetippt und übernommen. Soweit alles
kein Prob. Dieses EditForm soll aber so unauffällig wie irgendmöglich sein. Am besten wäre
ein Feld, das direkt neben dem markierten Wort aufgeht und so ähnlich wie bei
Windows "Datei Umbenennen" funktionobelt. Gibts da ne Compo die ich übersehen habe
oder muss ich meine Editform mit Cursorposition etc. plazieren und dementsprechend
designen...(was ja auch nicht schlimm wär ;)
Horido
Hugo
cartridge - Mo 07.11.05 19:55
Musst Du selber machen!
Koordinaten des Worts ermitteln und z.B. mit MessageDlgPos. Dialog dort hinlegen.
Gruß
Ingo
longhugo - Di 08.11.05 11:42
Det hew ick mich schon denkt...
trotzdem danke
jaenicke - Di 08.11.05 12:06
Da brauchts aber keine neue Form! Es reicht, wenn du ein Edit-Feld direkt an die Stelle legst, und wenn dieses den Fokus wieder verliert (weil der User woanders hingeklickt hat), es ausblendest.
longhugo - So 13.11.05 12:10
jaenicke hat folgendes geschrieben: |
| Da brauchts aber keine neue Form! Es reicht, wenn du ein Edit-Feld direkt an die Stelle legst, und wenn dieses den Fokus wieder verliert (weil der User woanders hingeklickt hat), es ausblendest. |
Jetzt war ich doch zu schnell mit meinem Urteil: Wenn ich ein Editfeld an die Position legen will,
dann benötige ich ja die Screen-Pixelkoordinaten (für Left und Top) oder? Da liegt der Hase im Pfeffer - wie bekomme
ich die Pixelkoordinaten des TMemo-Cursors????? Die Lösung ist jedenfalls nicht die Caret Position - die liefert
zwar einen TPoint - das sind aber die Koordinaten aus Zeile und Stelle und nicht die Pixel...habs auch
schon mit ClienttoScreen etc. probiert...oder kann man ggf. den Mauscursor an das Caret nageln? dann hätte
man ja die Pixel...
Please help - hab mir schon n Wolf gegoogelt...
CU
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!