Pouze tento týden sleva až 80 % na e-learning týkající se C# .NET
Aktuálně: Postihly zákazy tvou profesi? Poptávka po ajťácích prudce roste, využij slevové akce 80% výuky zdarma!
birthday

Diskuze: Funkce najít další

Aktivity (5)
Avatar
matesax
Redaktor
Avatar
matesax:16.7.2012 17:35

Dobrý den,
vymyslel jsem to takto:

if (this.richTextBox1.Text.Contains(j))
           {
               this.ri.Text = this.richTextBox1.Text;
               this.richTextBox1.Select(this.ri.Find(j), j.Length);
               this.ri.Select(this.ri.Find(j), j.Length);

               if (this.ri.SelectedText[0] != 'k')
                   this.ri.SelectedText = "k" + this.ri.SelectedText.Substring(1, this.ri.SelectedText.Length - 1);
               else
                   this.ri.SelectedText = "9" + this.ri.SelectedText.Substring(1, this.ri.SelectedText.Length - 1);
           }

Ale nějak mi to nefunguje - co byste - nebo jak byste to udělali Vy? Děkuji. :)

 
Odpovědět
16.7.2012 17:35
Avatar
David Čápka
Tým ITnetwork
Avatar
Odpovídá na matesax
David Čápka:16.7.2012 18:14

K najít další bych použil indexOf, můžeš mu zadat jako druhý parametr současnou pozici +1 a on bude hledat další výskyt.

Nahoru Odpovědět
16.7.2012 18:14
Jsem moc rád, že jsi na síti, a přeji ti top IT kariéru, ať jako zaměstnanec nebo podnikatel. Máš na to! :)
Avatar
matesax
Redaktor
Avatar
Odpovídá na David Čápka
matesax:16.7.2012 19:47

Tak nějak nevím co s tím - jak to použít? A to string value - první parametr - to má být jaký string? Druhý je tam popsán dobře - start int. Když to použiji jen tak - pod všemi událostmi - aby se mi již vybraný text nezahrnoval do dalšího hledání. Děkuji.

 
Nahoru Odpovědět
16.7.2012 19:47
Avatar
matesax
Redaktor
Avatar
Odpovídá na matesax
matesax:16.7.2012 19:48

dokončení věty :) :

do dalšího hledání, tak to nic neudělá,...

 
Nahoru Odpovědět
16.7.2012 19:48
Avatar
David Čápka
Tým ITnetwork
Avatar
Odpovídá na matesax
David Čápka:16.7.2012 21:08

Koukám, že to find má mnoho přetížení: http://msdn.microsoft.com/…ary/aa254576

Použij tu třetí variantu a máš vystaráno :)

Nahoru Odpovědět
16.7.2012 21:08
Jsem moc rád, že jsi na síti, a přeji ti top IT kariéru, ať jako zaměstnanec nebo podnikatel. Máš na to! :)
Tento výukový obsah pomáhají rozvíjet následující firmy, které dost možná hledají právě tebe!
Avatar
matesax
Redaktor
Avatar
Odpovídá na David Čápka
matesax:16.7.2012 22:13

No jo ale mě to pak místo stringu v prvním parametru chce char[],...

 
Nahoru Odpovědět
16.7.2012 22:13
Avatar
David Čápka
Tým ITnetwork
Avatar
Odpovídá na matesax
David Čápka:17.7.2012 0:09

A co máš v té proměnné ri vůbec?

Nahoru Odpovědět
17.7.2012 0:09
Jsem moc rád, že jsi na síti, a přeji ti top IT kariéru, ať jako zaměstnanec nebo podnikatel. Máš na to! :)
Avatar
matesax
Redaktor
Avatar
Odpovídá na David Čápka
matesax:17.7.2012 5:54

Druhý tichtextbox - abych neměnil nic v zobrazovaném textboxu - index ale nic nemění, takže ro něj jej nepotřebuji,...

 
Nahoru Odpovědět
17.7.2012 5:54
Avatar
matesax
Redaktor
Avatar
Odpovídá na David Čápka
matesax:17.7.2012 6:27

Vyřešeno!!! :)

public void Search(string j)
       {
           if (this.richTextBox1.Text.Substring(this.kde + 1).Contains(j))
           {
               this.kde = this.richTextBox1.Find(j, this.kde + 1, RichTextBoxFinds.MatchCase);
               this.richTextBox1.Select(this.kde, j.Length);
           }
       }

Děkuji...

 
Nahoru Odpovědět
17.7.2012 6:27
Avatar
matesax
Redaktor
Avatar
Odpovídá na matesax
matesax:17.7.2012 6:32

Upraveno:

 if (this.richTextBox1.Text.Substring(this.kde + 1).Contains(j) && j != "")
{
    this.kde = this.richTextBox1.Find(j, this.kde + 1, RichTextBoxFinds.MatchCase);
    this.richTextBox1.Select(this.kde, j.Length);
}
else
{
    this.kde = -1;
    MessageBox.Show("Buďto nebyly nalezeny žádné výsledky, nebo žádné další.", "Nenalezeno");
}
 
Nahoru Odpovědět
17.7.2012 6:32
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 10 zpráv z 10.