TRichEdit scrollt



  • Ich habe ein TRichEdit, dass nicht scrollen darf und immer allen Text anzeigen muss. Dazu resize ich nach jedem Textinput das TRichEdit.
    Nur scrollt die schon runter (den Text hoch) bevor ich das Element resize.
    Dadurch ist die erste Zeile quasi immer nicht sichtbar.

    void __fastcall Text::onTextChange(TObject* Sender)
    {
    	auto previousHeight = control_->Height;
    	// control_ => std::unique_ptr <TRichEdit>
    	control_->Height = (control_->Lines->Count + 1) * (control_->Font->Size + 5);
    
    	if (previousHeight != control_->Height)
    		parentSection_->causePageRealign();
    }
    

    Wie verhindere ich das?

    [Randnotiz: Habe gerade gemerkt dass das cleverer wäre ohne jedes mal Height zu setzen, sondern nur dann wenn previousHeight != control_->Height. Grad aber keine Lust das hier zu ändern.]



  • Sollte so funktionieren:

    RichEdit1->SelStart = 0;
    RichEdit1->Perform(EM_SCROLLCARET, 0, 0);
    

Anmelden zum Antworten