---
title: "Flera färger på en rad"
type: "forum-thread"
url: "https://www.webforum.nu/amne/programmering/43198-flera-färger-på-en-rad"
topic: "Programmering"
topic_url: "https://www.webforum.nu/amne/programmering"
author: "FreeZer"
published: "2002-05-06T17:12:54.000Z"
updated: "2002-05-08T07:24:45.000Z"
replies: 2
views: 226
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/programmering/43198-flera-färger-på-en-rad"
---

# Flera färger på en rad

## #1 — FreeZer, 2002-05-06T17:12Z

Här fick jag hjälp med hur jag sätter färg på vissa rader i en listbox:
<http://www.webforum.nu/showthread.php?s=&threadid=41529>

Men kan jag sätta en massa olika bakgrundsfärger på en rad i en listbox? t.ex. att 10% ska vara röd och 40% ska vara en annan färg och resten en tredje färg. Går det att göra så?

Permalänk: https://www.webforum.nu/p/43198

## #2 — Swey, 2002-05-08T01:10Z

Ändra Canvas.Font.Color till rätt färg beroende på Index.

Vad är problemet?

Permalänk: https://www.webforum.nu/p/670463

## #3 — jt, 2002-05-08T07:24Z

Något som liknar detta borde funka.

procedure TForm1.ListBox1DrawItem(Control: TWinControl; Index: Integer;
  Rect: TRect; State: TOwnerDrawState);
var
  ARect: TRect;
begin
  with Control as TListBox do
  begin
    ARect := Rect;
    Canvas.Brush.Color := clGreen;
    Arect.Right := Trunc(Rect.Right \* 0.1\*index);
    Canvas.FillRect(ARect);

    Canvas.Brush.Color := clRed;
    Arect.Left := Arect.Right;
    Arect.Right := Rect.Right;
    Canvas.FillRect(ARect);
  end;
end;

Permalänk: https://www.webforum.nu/p/670495

---

Tråden på webben: https://www.webforum.nu/amne/programmering/43198-flera-färger-på-en-rad
