Forum: Mikrocontroller und Digitale Elektronik Problem mit wxWidgets wxTextCtrl ShowPosition()


von TomA (Gast)


Lesenswert?

Hallo Leute,

vielleicht kann mir jemand von euch weiterhelfen, ich suche mir seit 
Tagen den Wolf und finde keine Lösung.

Ich arbeite an einem Editor unter wxWidgets. Dabei speichere ich, beim 
beenden des Editors, die Cursorposition in einer Config-Datei. Beim 
Neustart des Editors wird dann die Cursorposition restauriert 
(SetInsertionPoint()), das funktioniert auch ganz wunderbar.

Wenn ich nun mit ShowPosition() versuche den Textbereich in dem sich der 
Cursor befindet im Editor darzustellen, funktioniert das nicht. Es wird 
immer der Anfang des Textes angezeigt. Auch ein Anzeigen eines 
beliebigen Textabschnittes funktioniert nicht. Es ist gerade so, als 
wäre ShowPosition ohne Funktion.

Der Cursor steht an der richtigen Position, aber im Editor wird der 
falsche Textbereich dargestellt.

Muss denn in den Styles von wxTextCtrl oder sonstwo etwas bestimmtes 
eingestellt sein?

Programmausschnitt:

//Cursorposition im Editor wieder herstellen
  long pos = atol(config->Read(wxT("CurrentPos")));
  wTCtrl->SetInsertionPoint(pos);
  wTCtrl->ShowPosition(pos);

Gruss. Tom

von TomA (Gast)


Lesenswert?

Hallo Leute,

habe eine Lösung gefunden. Wenn ich wxStyledTextCtrl anstatt wxTextCtrl 
verwende, funktioniert alles wie gewollt. Allerdings sind im Programm 
mehr Änderungen nötig, da die beiden TextControls nicht funktionsgleich 
sind.

Interresant ist, mit wxRichTextCtrl wird irgendein Textbereich 
angezeigt, statt dem um den Cursor.

Hatte vergessen zu erwähnen, meine wxWidgets Version ist 3.1.4.

Gruss. Tom

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.