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

BitBtn該如何設置顏色...

尚未結案
hipig
高階會員


發表:31
回覆:75
積分:111
註冊:2007-01-15

發送簡訊給我
#1 引用回覆 回覆 發表時間:2008-02-22 18:16:11 IP:140.126.xxx.xxx 未訂閱
因為BitBtn的顏色是由OS設定
所以我利用以下程式碼變成我要的顏色
但當按鈕或視窗拖曳時顏色就會不見
因為我只有一個按鈕有這樣的需求
其他按鈕都不需要變化

為了轉移方便暫不考慮其他三方函式
是否可以告訴我如何讓顏色一直維持在BitBtn的方式
[code cpp]
void __fastcall TForm1::WndProc(TMessage &Msg)
{
TRect Rect;
Graphics::TBitmap* Bmp;
TControlCanvas* Canvas;

Bmp = new Graphics::TBitmap;
Canvas = new TControlCanvas;

TForm::WndProc(Msg);
if (Msg.Msg!=WM_PAINT)
return;

Canvas->Control = BitBtn1;
Rect = BitBtn1->ClientRect;
Bmp->Width = Rect.Width();
Bmp->Height = Rect.Height();
Bmp->Canvas->CopyRect(Rect, Canvas, Rect);
Bmp->Transparent = true;
Bmp->TransparentColor = clBtnFace;
Canvas->Brush->Color = clrRed;
Canvas->FillRect(Rect);
Canvas->Draw(0, 0, Bmp);

delete Bmp;
delete Canvas;
}

[/code]
系統時間:2024-04-26 5:02:11
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!