Delphi. Listbox, kolor wpisywanego tekstu

Delphi. Listbox, kolor wpisywanego tekstu
DK
  • Rejestracja:prawie 13 lat
  • Ostatnio:prawie 12 lat
  • Postów:64
0

Siema.
Da się zrobić tak, aby pół nazwy w listbox była w np. w kolorze czarnym a druga połowa w czerwonym. Np. mam listbox'a i:
<p></p> - Akapit
i da sięzrobić tak, aby

było czerwone a reszta czarna ?</p>
_13th_Dragon
  • Rejestracja:ponad 19 lat
  • Ostatnio:6 dni
0

Oczywiście - OwnerDraw.


Wykonuję programy na zamówienie, pisać na Priv.
Asm/C/C++/Pascal/Delphi/Java/C#/PHP/JS oraz inne języki.
flowCRANE
Moderator Delphi/Pascal
  • Rejestracja:ponad 13 lat
  • Ostatnio:około 11 godzin
  • Lokalizacja:Tuchów
  • Postów:12172
0

Owszem, można; Tak jak napisał @_13th_Dragon musisz skorzystać z OwnerDraw i możliwości jakie daje klasa TCanvas; Możesz to wykonać na wiele sposobów, np. podzielić łańcuch na poszczególne części, które będą rysowane w odrębnym kolorze i w pętli zmieniać właściwość Font.Color i rysować dzięki metodzie TextOut; Musisz także zmierzyć długość poszczególnych kawałków w pikselach - do tego użyj metody TextWidth; To wszystko;

Zawsze możesz w pętli skanować znaki i ustalać warunkami na bieżąco kolor czcionki oraz jej atrybuty; Będziesz miał mniej roboty i mniej pamięci zjedzą dane pomocnicze;

Nie wiem która metoda będzie szybsza i ogólnie pisząc lepsza - musiałbym sprawdzić; Pobaw się trochę i przede wszystkim poczytaj o tej klasie z różnych kursów i tutoriali, jest wiele artykułów w sieci bardzo przydatnych do tego celu także na tym forum;


Pracuję nad własną, arcade'ową, docelowo komercyjną grą z gatunku action/adventure w stylu retro (pixel art), programując silnik i powłokę gry od zupełnych podstaw, przy użyciu Free Pascala i SDL3. Więcej informacji znajdziesz na moim mikroblogu.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.