Ĺadny brzuch
chce dodać litere do richedit ale o kolorze ma zdecydować zmienna kolor. poniżej kod który juz napisałem
void DodajLitere(float kolor, String litera) { dlugSelekcji++; if(kolor<0.5) { Form1->RichEdit1->Lines->Strings[Form1->RichEdit1->Lines->Count-1] = Form1->RichEdit1->Lines->Strings[Form1->RichEdit1->Lines->Count-1] + litera; Form1->RichEdit1->SelStart=dlugSelekcji; Form1->RichEdit1->SelLength = 1; Form1->RichEdit1->SelAttributes->Color = clRed; } else { Form1->RichEdit1->Lines->Strings[Form1->RichEdit1->Lines->Count-1] = Form1->RichEdit1->Lines->Strings[Form1->RichEdit1->Lines->Count-1] + litera; Form1->RichEdit1->SelStart=dlugSelekcji; Form1->RichEdit1->SelLength = 1; Form1->RichEdit1->SelAttributes->Color = clBlue; } }
dlugSelekcji jest zwiększana po dodaniu każdego następnego znaku, i robi za liczbe znaków w richedit które już dodałem
problem teraz jest w tym że nie chce kolorować tych znaków, kooruje tylko ostatni. nie wiem teraz, czy brakuje jakiegos odświeżenia czy źle robie selekcje
//edit
jeszcze zapomniałem zapytać jak programowo dodać znak przejścia do nowej linii (enter) w RichEdit
Użytkownik strzelba edytował ten post 17 czerwiec 2007, 17:48
zanotowane.pl doc.pisz.pl pdf.pisz.pl zsf.htw.pl
void DodajLitere(float kolor, String litera) { dlugSelekcji++; if(kolor<0.5) { Form1->RichEdit1->Lines->Strings[Form1->RichEdit1->Lines->Count-1] = Form1->RichEdit1->Lines->Strings[Form1->RichEdit1->Lines->Count-1] + litera; Form1->RichEdit1->SelStart=dlugSelekcji; Form1->RichEdit1->SelLength = 1; Form1->RichEdit1->SelAttributes->Color = clRed; } else { Form1->RichEdit1->Lines->Strings[Form1->RichEdit1->Lines->Count-1] = Form1->RichEdit1->Lines->Strings[Form1->RichEdit1->Lines->Count-1] + litera; Form1->RichEdit1->SelStart=dlugSelekcji; Form1->RichEdit1->SelLength = 1; Form1->RichEdit1->SelAttributes->Color = clBlue; } }
dlugSelekcji jest zwiększana po dodaniu każdego następnego znaku, i robi za liczbe znaków w richedit które już dodałem
problem teraz jest w tym że nie chce kolorować tych znaków, kooruje tylko ostatni. nie wiem teraz, czy brakuje jakiegos odświeżenia czy źle robie selekcje
//edit
jeszcze zapomniałem zapytać jak programowo dodać znak przejścia do nowej linii (enter) w RichEdit
Użytkownik strzelba edytował ten post 17 czerwiec 2007, 17:48