刷子顏色等於表單底色,但不等於表單任一像點 ! |
尚未結案
|
cancer
高階會員 ![]() ![]() ![]() ![]() 發表:58 回覆:319 積分:190 註冊:2004-07-31 發送簡訊給我 |
大大們好,
開始 Delphi 新專案,在表單的 OnPaint 事件函式輸入如下程式碼: if Form1.Color = Canvas.Brush.Color then
Canvas.TextOut(50, 50, 'Form1.Color 等於 Canvas.Brush.Color')
else
Canvas.TextOut(50, 50, 'Form1.Color 不等於 Canvas.Brush.Color'); if Canvas.Pixels[ 50, 90] = Canvas.Brush.Color then //取任一像點
Canvas.TextOut(50, 100, '像點跟刷子同顏色')
else
Canvas.TextOut(50, 100, '像點跟刷子不同顏色'); 執行時在表單輸出為:
Form1.Color 等於 Canvas.Brush.Color
像點跟刷子不同顏色 以上結果實在太不合理,因為程式一開始時,刷子顏色已預設是表單底色,
那麼表單任一像點的顏色都應該跟刷子顏色一樣才對,可是輸出結果卻矛盾。
那位大大能替我解惑? 先感謝了
|
cancer
高階會員 ![]() ![]() ![]() ![]() 發表:58 回覆:319 積分:190 註冊:2004-07-31 發送簡訊給我 |
補充一下 以上程式 Form1.color 是用 Delphi 預設的 clBtnFace,
但如果 Form1.color 改為
clWhite, clAqua, clFuchsia, clBlue, clYellow,
clLime, clRed, clBlack 任一,
則輸出結果為:
    Form1.Color 等於 Canvas.Brush.Color
    像點跟刷子同顏色
Form1.color 若設為這七顏色以外的顏色,輸出結果就一定是
    Form1.Color 等於 Canvas.Brush.Color
    像點跟刷子不同顏色 我覺得這種結果很奇怪
|
wameng
版主 ![]() ![]() ![]() ![]() ![]() ![]() 發表:31 回覆:1336 積分:1188 註冊:2004-09-16 發送簡訊給我 |
|
cancer
高階會員 ![]() ![]() ![]() ![]() 發表:58 回覆:319 積分:190 註冊:2004-07-31 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |