菜鸟的学习笔记,如果对你有用最好。高手请无视。
ListView 要开 Doublebuffer
void __fastcall TForm1::ListView1CustomDrawSubItem(TCustomListView *Sender, TListItem *Item,
int SubItem, TCustomDrawState State, bool &DefaultDraw)
{
DefaultDraw=true;
int lef=0;
TRect R = Item->DisplayRect(drBounds);
TCustomListView * s = Sender;
for(int i=0;i<2;i++)
lef += s->Column[i]->Width+1;
R.bottom-=1;
R.Left+=lef;
String text=Item->SubItems->Strings[1];
for(int i=0;i<ListView1->Items->Count;i++) //找最大值
{
if (ListView1->Items->Item[i]->SubItems->Strings[1].ToInt()>maxv)
maxv=ListView1->Items->Item[i]->SubItems->Strings[1].ToInt();
}
float p=(float)(Item->SubItems->Strings[1].ToInt())/(float)maxv;
p*&