void __fastcall TForm2::ListView1CustomDrawSubItem(TCustomListView *Sender,
TListItem *Item, int SubItem, TCustomDrawState State,
bool &DefaultDraw)
{
//DefaultDraw = False; // 不显示默认的文本.
if(Item->Data == NULL)
{
TRect Rect = Item->DisplayRect(drBounds); // 获取Item显示的区域.
TSpeedButton * Button = new TSpeedButton(ListView1);
Button->Parent = ListView1;
Button->Caption = "查看";
Button->Width = 60;
Button->Height = Rect.Height();
Button->Left = Rect.Right - ((ListView1->Columns->Items[11]->Width + Button->Width) / 2);
Button->Top = Rect.Top;
Button->Visible = True;
//Button->Flat = true;
Button->Tag = (int)Item;
OutputDebugStringA(AnsiString(SubItem).c_str());
Item->Data = Button;
Button->OnClick = look;
}
}
//---------------------------------------------------------------------------
void __fastcall TForm2::look(TObject* Sender)
{
TSpeedButton * pb = (TSpeedButton*)Sender;
TListItem * p = (TListItem*)pb->Tag;
pb->Visible = false;
if(p->SubItems->Count >0)
ShowMessage(p->SubItems->Strings[10]);
}