LISTVIEW 問題 |
尚未結案
|
lia12345kimo
一般會員 發表:5 回覆:3 積分:1 註冊:2004-08-16 發送簡訊給我 |
|
limeca
中階會員 發表:2 回覆:74 積分:60 註冊:2005-05-11 發送簡訊給我 |
您好,請您參考下面程式
先去OnCustomDrawItem點兩下就會產生"ListView1CustomDrawItem"
再填入if那段程式碼就有您要的功能了
void __fastcall TForm1::ListView1CustomDrawItem(TCustomListView *Sender,TListItem *Item, TCustomDrawState State, bool &DefaultDraw)
{
if(Item->Caption=="寄件者"){
ListView1->Font->Color=clWhite;//色體顏色為白色
ListView1->Canvas->Brush->Color=TColor(0x10B420);
//(0x10B420)=RGB顏色 (32,180,16);
}
}
|
lia12345kimo
一般會員 發表:5 回覆:3 積分:1 註冊:2004-08-16 發送簡訊給我 |
|
limeca
中階會員 發表:2 回覆:74 積分:60 註冊:2005-05-11 發送簡訊給我 |
|
RedSnow
版主 發表:79 回覆:1322 積分:845 註冊:2003-12-15 發送簡訊給我 |
lia12345kimo 您好: 如果您貼上來的那個物件是 ListView,那麼您在使用 OnCustomDrawItem 之前,必須要先將 OwnerDraw 屬性設為 true。 如果您貼上來的那個物件是 HeaderControl,那麼您可以按下列步驟來處理:
1. 在 HeaderControl 物件上點擊滑鼠左鍵兩次,然後將 "寄件者" 欄位的 Style 屬性設為 hsOwnerDraw。 2. 在 HeaderControl 物件事件表的 OnDrawSection 事件欄點擊滑鼠左鍵兩次,然後在該事件中設定如下的敘述:
void __fastcall TForm1::HeaderControl1DrawSection( THeaderControl *HeaderControl, THeaderSection *Section, const TRect &Rect, bool Pressed) { TRect tmpRect = Rect; HeaderControl->Canvas->Brush->Color = clYellow; // 設定背景色 HeaderControl->Canvas->FillRect(Rect); // 將欄位區域背景填為指定顏色 if (Pressed){ // 如果欄位是呈 "按下" 狀態 OffsetRect(&tmpRect, 1, 1); // 將顯示字樣的位置向右向下偏移一個點 } HeaderControl->Canvas->Font->Color = clBlue; // 設定字樣顏色 HeaderControl->Canvas->TextOut(tmpRect.Left HeaderControl->Canvas->Font->Size, tmpRect.Top 2, Section->Text); // 顯示欄位字樣 }7 天天敲鍵盤 v 時時按滑鼠 8 發表人 - RedSnow 於 2005/06/20 00:51:34 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |