![]() |
SynEdit und Entf
Hallo ich habe ein großes problem.
Man kann in meinem Syneditfeld keine einzelne Bustaben mit der Entf Taste entfernen. Sondern nur Makierten Text kann mir jemand sagen woran das liegt? |
Re: SynEdit und Entf
Zitat:
|
Re: SynEdit und Entf
Ich meine Syneditor
|
Re: SynEdit und Entf
Wenn ich manuell das ereignis KeyDown abfrage passiert auch nichts.
Also ich habe die Taste Entf abgefragt und wenn diese gedrückt ist sollte ein ereignis starten, aber nichts passiert |
Re: SynEdit und Entf
Delphi-Quellcode:
Aber ich weiss immer nocht nicht was "Syneditor" ist. :? :roll: Sry.
procedure TForm1.ApplicationEvents1Message(var Msg: tagMSG;
var Handled: Boolean); begin if Msg.message = WM_KEYDOWN then if Msg.wParam = VK_DELETE then Caption := IntToStr(Random(1000)); Handled := False; end; |
Re: SynEdit und Entf
Syneditor von Typ TSynEdit Package Synedit siehe sourceforge.net
was soll ich mit dem Code jetzt machen? bzw was soll der mir bringen? |
Re: SynEdit und Entf
Zitat:
Mach es so:
Delphi-Quellcode:
Statt TEdit nehme TSynEdit. Sollte funktionieren.
type
TMyEdit = class(TEdit) procedure WMKeyDown(var Message: TWMKeyDown); message WM_KEYDOWN; end; TForm1 = class(TForm) procedure FormCreate(Sender: TObject); procedure FormDestroy(Sender: TObject); private { Private declarations } public { Public declarations } MyEdit : TMyEdit; end; var Form1: TForm1; implementation {$R *.dfm} procedure TMyEdit.WMKeyDown(var Message: TWMKeyDown); begin // etaws damit man FeedBack bekommt if Message.CharCode = VK_DELETE then Self.Color := RGB(Random(256),Random(256),Random(256)); inherited; end; procedure TForm1.FormCreate(Sender: TObject); begin MyEdit := TMyEdit.Create(self); MyEdit.Parent := Self; MyEdit.Visible := True; MyEdit.Top := 10; MyEdit.Left := 10; end; procedure TForm1.FormDestroy(Sender: TObject); begin MyEdit.Free; end; |
Re: SynEdit und Entf
Das hilft mir leider auch nicht.
Also mein Problem ist, dass die entf taste im erreignis KeyDown nicht reagiert im KeyUp aber geht sie. Alle anderen Tasten gehen auch im key dowm nur die entf taste nicht. Bitte ich brauche hilfe. |
Re: SynEdit und Entf
Kannst du mir die Link zu der Komponente posten. Ich bin 100% sicher dass es so geht.
|
Re: SynEdit und Entf
Neu du hast mich falsch verstanden.
Dein Code ist ja richtig und läuft auch. Allerdings muss ich im Projekt die entf taste irgendwie als HotKey oder shortcut benutzt haben oder so. Es liegt auch nicht an Synedit den eigentlich kann man da entfernen. Und wenn ich mit deinem Code ein neues Edit vom Typ TsynEdit erstelle, dann geht es bei dem neuen auch. Kann auch sein, dass ich einen Fehler in den Keystrokes von SynEdit habe. Aber trotzdem Synedit findest du auf ![]() |
Re: SynEdit und Entf
Zitat:
in der datei "SynEdit.Pas" die procedure "TCustomSynEdit.ClearSelection;" folgendermassen ändern:
Delphi-Quellcode:
dann funktionierts mit der [entf]-taste...
procedure TCustomSynEdit.ClearSelection;
begin ExecuteCommand(ecDeleteChar,#0,nil); end; ps: hab die lösung mal irgendwo im forum von SynEdit gefunden... |
Re: SynEdit und Entf
Ist zwar schon etwas länger her, dass ich das Synedit angerührt habe, aber ich glaube ich habe es ohne jegliche Code änderungen oder hässliche Eventhandler Firemeleien gelöst.
Ich glaube KeyStrokes hieß die Property. :gruebel: Wenn du dort Del[IrgendWas]Char[IrgendWas] eine andere Taste zuweist bzw. es löschst wird es diese Funktion für die {Entf]-Taste nicht mehr geben. ;) |
Re: SynEdit und Entf
jo das gleiche problem habe ich auch. wobei ich das nicht so schwerwiegend ansehe. das liegt wohl an synedit.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:00 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-2025 by Thomas Breitkreuz