Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Position beim SynEdit (https://www.delphipraxis.net/110713-position-beim-synedit.html)

XPLOSIV 23. Mär 2008 02:10


Position beim SynEdit
 
Also ich will das die Position (wo er eben gerade is) bleibt, auch wenn ich etwas anklicke, geht das ?

calculon 23. Mär 2008 02:53

Re: Position beim SynEdit
 
Zitat:

Zitat von XPLOSIV
Also ich will das die Position (wo er eben gerade is) bleibt, auch wenn ich etwas anklicke, geht das ?

Hmm, versuch' mal im OnClick oder MouseUp-Ereignis der SynEdit-Komponente SynEdit.CaretX und SynEdit.CaretY auf deine alten Caret-Werte zu setzen. Könnte so klappen, weiß' ich aber nicht...

Gruß

XPLOSIV 23. Mär 2008 07:47

Re: Position beim SynEdit
 
Sry kann CarreX oder Y nicht finden :gruebel:

toms 23. Mär 2008 07:58

Re: Position beim SynEdit
 
Zitat:

Zitat von XPLOSIV
Sry kann CarreX oder Y nicht finden :gruebel:


Delphi-Quellcode:
var
  BufferCoord: TBufferCoord;
begin
  BufferCoord := SynEdit1.CaretXY;
  Caption := Format(' %6d:%3d ', [BufferCoord.Char{x}, BufferCoord.Line{y}]);
end;

XPLOSIV 23. Mär 2008 08:17

Re: Position beim SynEdit
 
Wo sollte ich das reinschreiben ?

marabu 23. Mär 2008 09:08

Re: Position beim SynEdit
 
Hi,

Zitat:

Zitat von XPLOSIV
Also ich will das die Position (wo er eben gerade is) bleibt, auch wenn ich etwas anklicke, geht das ?

was genau willst du anklicken?

Frohe Ostern

XPLOSIV 23. Mär 2008 10:59

Re: Position beim SynEdit
 
Ah Marabu^^ Schön dich zu sehen :)

Naja TButtons -aber auch Edits will ich benutzen, die aktuelle Position müsste also gespeichert und geladen werden.
Hab das in anderen Tools auch gesehen. Ich meine das so: GothicTextEditor [Download]
Im Menü auf "SD" klicken ;)

Ist aber in VisualBasic geschrieben...

Blackheart 23. Mär 2008 11:17

Re: Position beim SynEdit
 
Die Lösung hast Du doch schon bekommen Caretx, CaretY

XPLOSIV 23. Mär 2008 11:24

Re: Position beim SynEdit
 
Ja aber ich hatte auch gefragt "Wo soll ich das reinschreiben ?" ;)

Blackheart 23. Mär 2008 11:35

Re: Position beim SynEdit
 
Wie wärs mit OnChange.

marabu 23. Mär 2008 12:13

Re: Position beim SynEdit
 
Hi,

die Position des Caret bleibt erhalten, wenn du ein anderes Control fokusierst. Lediglich der visuelle Effekt fällt beim Verlassen des SynEdit weg. Der kommt wieder, wenn du das SynEdit-Control wieder fokusierst. Wenn bei dir die Position scheinbar vergessen wird, dann hast du wohl mit der Maus in das SynEdit-Control geklickt. Dabei wird die Position des Carets sofort angepasst.

Willst du dieses Verhalten ändern?

Delphi-Quellcode:
procedure TDemoForm.SynEditExit(Sender: TObject);
begin
  with Sender as TSynEdit do
    Tag := SelStart;
end;

procedure TDemoForm.SynEditClick(Sender: TObject);
begin
  with Sender as TSynEdit do
    if Tag <> 0 then
    begin
      SelStart := Tag;
      Tag := 0;
    end else Abort;
end;
Freundliche Grüße


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:55 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