線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:1455
推到 Plurk!
推到 Facebook!

LISTVIEW 問題

尚未結案
lia12345kimo
一般會員


發表:5
回覆:3
積分:1
註冊:2004-08-16

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-06-19 00:16:46 IP:218.32.xxx.xxx 未訂閱
上圖的那個寄件者的那一個欄位要如何變字的顏色和背景色呢
limeca
中階會員


發表:2
回覆:74
積分:60
註冊:2005-05-11

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-06-19 11:41:30 IP:61.230.xxx.xxx 未訂閱
您好,請您參考下面程式 先去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

發送簡訊給我
#3 引用回覆 回覆 發表時間:2005-06-19 12:44:00 IP:218.32.xxx.xxx 未訂閱
>__<"好像不行的,我的意思是如果把最上面的標題(寄件者、主題、大小) 變顏色呢?
limeca
中階會員


發表:2
回覆:74
積分:60
註冊:2005-05-11

發送簡訊給我
#4 引用回覆 回覆 發表時間:2005-06-19 22:13:00 IP:61.230.xxx.xxx 未訂閱
那個功能的確可以做到設Item的顏色字形及底色~ 您那個是不是column~~~ 那請您參考下面的文章,可能有您要的~ TListView中每個ListItem字體顏色 http://delphi.ktop.com.tw/topic.php?topic_id=71259 發表人 - limeca 於 2005/06/19 23:27:48
RedSnow
版主


發表:79
回覆:1322
積分:845
註冊:2003-12-15

發送簡訊給我
#5 引用回覆 回覆 發表時間:2005-06-20 00:47:18 IP:219.136.xxx.xxx 未訂閱
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
系統時間:2024-05-03 23:26:41
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!