全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1145
推到 Plurk!
推到 Facebook!

請問版主有沒有CheckListBox的原件但裡面check 的 cross 是用顏色表示

尚未結案
SamSam1230
中階會員


發表:128
回覆:178
積分:65
註冊:2004-12-23

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-01-19 11:22:52 IP:218.103.xxx.xxx 未訂閱
請版主幫幫忙
wameng
版主


發表:31
回覆:1336
積分:1188
註冊:2004-09-16

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-01-21 21:40:46 IP:61.31.xxx.xxx 未訂閱
一般很少有CheckListBox 中的勾勾是自己畫的。幾乎沒有。 (才可能變化顏色) 大多利用圖示畫圖。 也就是說您看到的,事實上為圖檔。非自己本身向量畫圖。 因此除了更換圖示或自己畫。因別無他法。
Fishman
尊榮會員


發表:120
回覆:1949
積分:2163
註冊:2006-10-28

發送簡訊給我
#3 引用回覆 回覆 發表時間:2005-01-22 12:05:05 IP:210.65.xxx.xxx 未訂閱
Hi SamSam1230,    運用 Delphi 提供的 CheckListBox 元件,再如 wameng 版大所言,自行繪製即可 1.set Style for the CheckListBox to lbOwnerDrawFixed 2.Add below codes to it's OnDrawItem event
procedure TForm1.CheckListBox1DrawItem(Control: TWinControl;
  Index: Integer; Rect: TRect; State: TOwnerDrawState);
var
  Offsetx,Offsety: Integer;
  CRect : TRect;
  CC : TColor;
begin
  OffsetX := 2;
  Offsety := 1;
  with (Control as TCheckListBox) do
    begin
      CRect.Left := ItemRect(Index).Left;
      CRect.Right := ItemRect(Index).Left   15;
      CRect.Top := ItemRect(Index).Top;
      CRect.Bottom := ItemRect(Index).Bottom;
      if Checked[Index] then
        begin
          CC := Canvas.Brush.Color;
          Canvas.Brush.Color := Color;
          Canvas.FillRect(CRect);
          Canvas.Brush.Color := ClBlue; // Fill Color
          Canvas.Rectangle(CRect.Left   OffsetX,Crect.Top   OffsetY,Crect.Right - OffsetX,Crect.Bottom - OffsetY);
          Canvas.Brush.Color := CC;
        end;
    end;
  with (Control as TCheckListBox).Canvas do
  begin
  FillRect(Rect);
  TextOut(Rect.Left   OffsetX, Rect.Top, (Control as TCheckListBox).Items[Index]);
  end;
end;
---------------------------------- 小弟才疏學淺,若有謬誤尚請不吝指教 ----------------------------------
------
Fishman
SamSam1230
中階會員


發表:128
回覆:178
積分:65
註冊:2004-12-23

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