Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailemVyřešeno RichEdit v Delphi - efektivní rozlišení slov (syntaxe)

Dolezite je poslat co najmenej sprav tomu richeditu. Kedze to programujes cez nejaky objektovy framework (v tvojom pripade delphi) tak nevies kontrolovat kolko sprav a kedy sa poslu, robi to u teba ten objekt RichEdit. Ak by si si chcel byt isty ze posielas co najmenej sprav, tak si zisti HWND tvojho richeditu a posielaj mu spravy sam :-) (http://msdn2.microsoft.com/en-us/library/bb787877(V S.85).aspx - popis sprav pre richedit, v podstate staci jedna sprava pre oznacenie vyseku a jedna sprava pre nastavenie farby).
Predpokladam ale ze kazde RichEdit.text[] posle spravu, takze ak si nacitas naraz (nie po pismenach) cely text do nejakeho stringu a prezeras si string tak to moze byt rychlejsie.

inac myslim ze by si si mal overit (napr. zakomentovanim tych operacii nastavenia farieb) ze co tam zere tolko casu. Ze ci
a) praca s richeditom (to oznacovanie vyseku a nastavenie farieb)
alebo ci
b) to tvoje porovnavanie s klucovymi slovami.
Pretoze si viem predstavit ze tolko trva to porovnavanie s kluc.slovami, ak to nie je urobene optimalne (priklad ak mam 30000 pismen a pre kazde zavolam nejaky string compare s 1000 kluc.slovami, tak to je dohromady 30milionov krat stringcompare... apod) A si predstav ze co ked tam budes mat pol miliona pismen... (pol miliardy krat stringcompare ak mam 1000klucovych slov :)

V pripade b) by stala potom otazka uplne inac (ako urobit porovnavanie s kluc.slovami)... :)

P.S. a ako som uz pisal v predch.prispevku, vlasne vykreslovanie textu je (IMHO) v tvojom pripade omnoho vyhodnejsie (pretoze potom mas kontrolu nad tym ktory vysek vykreslujes, a staras sa / farbis len ten vysek, nie cely 0.5MB script). Podla mna urobit vlastne vykreslovanie textu nie je zlozite, urcite mas v delphi aj fcie aj na vykreslenie textu na canvas apod. ...ale ak to ma mat aj moznost editacie tak to je uz zlozite, to hej...

Reakce na odpověď

1 Zadajte svou přezdívku:
2 Napište svou odpověď:
3 Pokud chcete dostat ban, zadejte libovolný text:

Zpět do poradny