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

[問題]請問關於Pixel給值的問題

尚未結案
easylife
一般會員


發表:1
回覆:5
積分:1
註冊:2004-05-11

發送簡訊給我
#1 引用回覆 回覆 發表時間:2004-05-11 02:27:51 IP:140.113.xxx.xxx 未訂閱
我現在 TColor a=(TColor)RGB(229,104,137); 現在將一個pixel設成 view->Canvas->Pixels[0][0]=(TColor)RGB(229,104,137); 用一個TColor b= view->Canvas->Pixels[0][0]; 為什麼a和b不會相等? 可是將所有的RGB寫成RGB(255,0,255) a和b測試出來是相等的 請問為什麼會這樣?
JerryKuo
版主


發表:42
回覆:571
積分:322
註冊:2003-03-10

發送簡訊給我
#2 引用回覆 回覆 發表時間:2004-05-11 10:36:07 IP:61.230.xxx.xxx 未訂閱
引言: 我現在 TColor a=(TColor)RGB(229,104,137); 現在將一個pixel設成 view->Canvas->Pixels[0][0]=(TColor)RGB(229,104,137); 用一個TColor b= view->Canvas->Pixels[0][0]; 為什麼a和b不會相等? 可是將所有的RGB寫成RGB(255,0,255) a和b測試出來是相等的 請問為什麼會這樣?
easylife你好: 在使用BCB的TImage和TBitmap物件時,有一點要經常注意,就是Pixel Format。 如果view這個影像物件的pixelformat不是pf24bit,處理下面這樣的動作之後
view->Canvas->Pixels[0][0]=(TColor)RGB(229,104,137);
由於view影像格式的影響,RGB(229,104,137)必須改成view的影像格式, 格式一變,存放的RGB(229,104,137),將和原始值不同。 如果將view的pixelformat改成pf24bit,RGB(229,104,137)將不會被改變存入, 而a和b此時才會相同。 ^^
easylife
一般會員


發表:1
回覆:5
積分:1
註冊:2004-05-11

發送簡訊給我
#3 引用回覆 回覆 發表時間:2004-05-11 11:20:39 IP:163.28.xxx.xxx 未訂閱
很謝謝你的回答^^ 那可以再請問一下 我的view是Tview的物件, 看了一下它的property的設定,沒有設定pixelformat的地方。 要怎麼將pixelformat改成pf24bit?
JerryKuo
版主


發表:42
回覆:571
積分:322
註冊:2003-03-10

發送簡訊給我
#4 引用回覆 回覆 發表時間:2004-05-11 11:51:40 IP:61.230.xxx.xxx 未訂閱
引言: 很謝謝你的回答^^ 那可以再請問一下 我的view是Tview的物件, 看了一下它的property的設定,沒有設定pixelformat的地方。 要怎麼將pixelformat改成pf24bit?
easylife你好: 我的bcb沒有Tview這個元件,沒辦法幫你查。 ^^
easylife
一般會員


發表:1
回覆:5
積分:1
註冊:2004-05-11

發送簡訊給我
#5 引用回覆 回覆 發表時間:2004-05-11 13:02:48 IP:163.28.xxx.xxx 未訂閱
抱歉,我沒注意到Tview是我自己的class 它是Form元件內的 請問在Form中要怎麼設定呢?
JerryKuo
版主


發表:42
回覆:571
積分:322
註冊:2003-03-10

發送簡訊給我
#6 引用回覆 回覆 發表時間:2004-05-11 13:40:03 IP:61.230.xxx.xxx 未訂閱
引言: 抱歉,我沒注意到Tview是我自己的class 它是Form元件內的 請問在Form中要怎麼設定呢?
Tview是怎麼宣告的呢? 方便的話,請你把部分程式貼出討論 ^^
easylife
一般會員


發表:1
回覆:5
積分:1
註冊:2004-05-11

發送簡訊給我
#7 引用回覆 回覆 發表時間:2004-05-11 15:03:24 IP:163.28.xxx.xxx 未訂閱
這是在.h檔內 class Tview : public TForm { __published:        // IDE-managed Components         TButton *Button1;         void __fastcall FormCreate(TObject *Sender);         void __fastcall Button1Click(TObject *Sender);         void __fastcall FormMouseUp(TObject *Sender, TMouseButton Button,           TShiftState Shift, int X, int Y); private:        // User declarations public:                // User declarations         __fastcall Tview(TComponent* Owner); }; //--------------------------------------------------------------------------- extern PACKAGE Tview *view;    在.cpp檔內 Tview *view;    
JerryKuo
版主


發表:42
回覆:571
積分:322
註冊:2003-03-10

發送簡訊給我
#8 引用回覆 回覆 發表時間:2004-05-12 16:23:21 IP:61.230.xxx.xxx 未訂閱
引言: 這是在.h檔內 class Tview : public TForm { __published: // IDE-managed Components TButton *Button1; void __fastcall FormCreate(TObject *Sender); void __fastcall Button1Click(TObject *Sender); void __fastcall FormMouseUp(TObject *Sender, TMouseButton Button, TShiftState Shift, int X, int Y); private: // User declarations public: // User declarations __fastcall Tview(TComponent* Owner); }; //--------------------------------------------------------------------------- extern PACKAGE Tview *view; 在.cpp檔內 Tview *view;
easylife你好: 你的view其實就是一個TForm物件,這樣就沒有pixelformat可以設定 就我所知,只有TBitmap才有pixelformat可以設定。我想你可能要轉換 別的方式處理,利用TBitmap的物件功能,以達到你要的結果。 發表人 - jerrykuo 於 2004/05/12 17:18:23
easylife
一般會員


發表:1
回覆:5
積分:1
註冊:2004-05-11

發送簡訊給我
#9 引用回覆 回覆 發表時間:2004-05-13 13:23:03 IP:163.28.xxx.xxx 未訂閱
謝謝你的回答 因為我沒有使用過bitmap的物件 手邊的書也都沒有介紹到如何使用相關物件 因此可以請問一下哪裡有基本介紹如何使用bitmap 或是怎麼加入bitmap物件在現有form中的相關文件 謝謝^^
JerryKuo
版主


發表:42
回覆:571
積分:322
註冊:2003-03-10

發送簡訊給我
#10 引用回覆 回覆 發表時間:2004-05-13 14:56:20 IP:61.230.xxx.xxx 未訂閱
引言: 謝謝你的回答 因為我沒有使用過bitmap的物件 手邊的書也都沒有介紹到如何使用相關物件 因此可以請問一下哪裡有基本介紹如何使用bitmap 或是怎麼加入bitmap物件在現有form中的相關文件
你好: 本版有許多討論bitmap的文章,建議搜尋一下 在作品發表區也有許多前輩的程式作品,也可以下載來使用, 並參考寫法 影像處理VI 作者:taishyang http://delphi.ktop.com.tw/topic.php?TOPIC_ID=40159 開啟多重圖檔 http://delphi.ktop.com.tw/topic.php?TOPIC_ID=44098 ^^
easylife
一般會員


發表:1
回覆:5
積分:1
註冊:2004-05-11

發送簡訊給我
#11 引用回覆 回覆 發表時間:2004-05-14 04:03:06 IP:163.28.xxx.xxx 未訂閱
我改用bitmap之後 已經可以解決所問的問題了 謝謝你詳細和有耐心的回答 很感謝你^^
系統時間:2024-05-12 1:13:35
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!