RichEdit Focus



  • Wie krieg ich die position des Cursors in der RichEdit raus wenn die keinen Focus mehr hatt?

    So und ich bin "not amused" über das Schließen meines Threads



  • Wer nicht hören will muss fühlen. 🙂

    Zum Thema: es macht keinen Unterschied, ob das RichEdit den Focus hat oder nicht. Die Cursorposition bleibt auch beim "Verlieren" des Focus erhalten und abrufbar.



  • for(int i = 0; i < ListView1->Items->Count; i++)
            {
            if(ListView1->Items->Item[i]->Selected)
                {
                    int icount = PageControl1->ActivePage->TabIndex;
    
                    int pos = EingabeFeld[icount]->SelStart;
    
                    AnsiString temp = ListView1->Items->Item[i]->SubItems->Text;
    
                    EingabeFeld[icount]->Lines->Insert(pos,temp);//? weiss nicht  
                                    //warum das nicht funktioniert
                }
            }
    

    wieso funktioniert das dann nicht? und wir wären bei der ListView 😉

    die position und den String gibt er mir definitiv zurück(ShowMessage), aber er will EingabeFeld[icount]->Lines->Insert(pos,temp); nicht ausführen.

    [ Dieser Beitrag wurde am 29.04.2003 um 21:43 Uhr von mosta editiert. ]



  • Wenn der String korrekt zurückgegeben wird dann gibt ja wohl offensichtlich kein Problem mit dem ListView. 😉

    EingabeFeld[icount]->Lines->Insert(pos,temp);//? weiss nicht //warum das nicht funktioniert

    Was glaubst (bzw. hoffst) du denn, was dieser Code bewirkt?



  • naja, den Inhalt der Listview, an die Stelle des Cursors einzufügen.



  • TRichEdit::Lines::Insert fügt eine neue Zeile ein, und zwar unter der Zeilennummer, die du hier mit pos übergibst ...

    Ich vermute mal, du willst mitten im Text (<-- Zaunpfahl ;)) etwas einfügen?



  • Ich vermute mal, du willst mitten im Text (<-- Zaunpfahl ) etwas einfügen?

    ja und wie

    [ Dieser Beitrag wurde am 29.04.2003 um 23:24 Uhr von mosta editiert. ]



  • Indem du den String in TRichEdit::Lines::Text einfügst. Stell dich doch nicht so an!



  • EingabeFeld[icount]->Lines->Text.Insert(temp,pos);
    Funktioniert auch nicht
    EingabeFeld[icount]->Lines->Add(temp);
    Funktioniert. Müsste er es aber nicht in beiden Fällen wenigstens irgenwo eintragen aber er zeigt keine Reaktion muss ich irgendeine Eigenschaft vorher verändern?

    [ Dieser Beitrag wurde am 30.04.2003 um 00:07 Uhr von mosta editiert. ]



  • EingabeFeld[icount]->Lines->Text = EingabeFeld[icount]->Lines->Text.Insert(temp,pos);
    


  • danke funktioniert bestens 🙂


Anmelden zum Antworten