Řešení:

Předmět Autor Datum
richTextBox1.SelectionStart
Wikan 31.05.2018 19:46
Wikan
Potřebuji mazat text od kurzoru v richTextBox1 po vyhledaný text. Nevím jak to napsat. richTextBox1.…
MXMX 31.05.2018 21:49
MXMX
Proč by to nefungovalo správně? var selectionStart = richTextBox1.SelectionStart; var found = rich…
Wikan 31.05.2018 22:24
Wikan
Chyba byla u mě měl sem to špatně napsané.
MXMX 01.06.2018 15:27
MXMX
Ještě bych se chtěl zeptat jak to napsat aby se text umazal od kurzoru po konec řádku v kterém je hl…
MXMX 01.06.2018 18:31
MXMX
To záleží na tom, čemu konkrétně říkáš konec řádku. Ale pokud tím myslíš zalomení, tak by ti mělo po…
Wikan 01.06.2018 20:02
Wikan
S programováním teprve začínám tak sem to moc na tom odkazu nepochopil. Myslel sem zalomení řádku. Š…
MXMX 01.06.2018 20:57
MXMX
var lineIndex = richTextBox1.GetLineFromCharIndex(richTextBox1.SelectionStart); var endIndex = richT…
Wikan 02.06.2018 08:51
Wikan
Funguje to dík za rady. poslední
MXMX 02.06.2018 13:16
MXMX

Proč by to nefungovalo správně?

            var selectionStart = richTextBox1.SelectionStart;
            var found = richTextBox1.Find("tempus");
            if (found != -1)
            {
                int start;
                int length;
                if (selectionStart < found)
                {
                    start = selectionStart;
                    length = found - start;
                }
                else
                {
                    start = found;
                    length = selectionStart - start;
                }
                richTextBox1.Text = richTextBox1.Text.Remove(start, length);
            }

S programováním teprve začínám tak sem to moc na tom odkazu nepochopil.
Myslel sem zalomení řádku. Šlo by to doplnit do konkrétního kódu

private void btnUmazat_Click(object sender, EventArgs e)
        {
            var selectionStart = richTextBox1.SelectionStart;
            var found = richTextBox1.Find(txtVyhledat.Text);
            int start = selectionStart;
            int length = found - start;
            richTextBox1.Text = richTextBox1.Text.Remove(start, length);
        }
var lineIndex = richTextBox1.GetLineFromCharIndex(richTextBox1.SelectionStart);
var endIndex = richTextBox1.GetFirstCharIndexFromLine(lineIndex + 1);
if (endIndex == -1)
   endIndex = richTextBox1.Text.Length;

richTextBox1.Text = richTextBox1.Text.Remove(richTextBox1.SelectionStart, endIndex - richTextBox1.SelectionStart);

Zpět do poradny Odpovědět na původní otázku Nahoru