Edit 關閉後顏色問題 |
缺席
|
zoezoe
一般會員 發表:10 回覆:25 積分:12 註冊:2009-04-28 發送簡訊給我 |
|
frontier
初階會員 發表:0 回覆:27 積分:30 註冊:2008-11-20 發送簡訊給我 |
|
zoezoe
一般會員 發表:10 回覆:25 積分:12 註冊:2009-04-28 發送簡訊給我 |
|
carstyc
資深會員 發表:16 回覆:254 積分:329 註冊:2003-07-18 發送簡訊給我 |
這好像有點難,在TEdit 的 Event 沒有 onPaint 可以讓人家去重畫。
但有個賤招您參考一下 把 TEdit 設成 ReadOnly 再把 TEdit 的底色改成灰色,讓它看起來很像Disable 無法點選。雖然它實際上還能點選。 如果還是怕User去點到它時,就在它的 OnEnter Event中去把Focus 轉到別的地方去。這樣User永遠就點不到它了。 PS. 你原本的需求是要把 Disable 的 TEdit 字體變成黑色,可是如果變成黑色,不就跟未Disable的 TEdit 長的一模一樣,這樣User不是一樣也分不出來。 ===================引 用 zoezoe 文 章=================== 我的程式有瀏覽及編輯兩個狀態~ 當還沒按下編輯模式的時候~所有Edit都是呈現Enable = false 的狀態 為何我不用ReadOnly是因為還是可以去選取它,這樣會讓使用者誤以為可以編輯 所以我才要把Edit關起來,按下編輯模式時才打開。 現在是因為把Edit關起來的字變灰色的顯示不清楚不好看的關係才會問問各位前輩們有沒有辦法
編輯記錄
carstyc 重新編輯於 2009-06-05 13:58:30, 註解 無‧
|
zoezoe
一般會員 發表:10 回覆:25 積分:12 註冊:2009-04-28 發送簡訊給我 |
這個問題我有想過了,的確只能一直SetFocus到別的地方去了
未disabled的Edit 正常是白色可讓人輸入的,一按新增或修改,底色就會從灰色變白色並且SetFocus到修改點 自然使用者就不會搞混了,這才是我的用意所在。因為一開始的瀏覽畫面就已經帶資料進去了~加上本身一開始底色就是灰色 所以關掉之後再灰色就真的看不到了,現在也只有用像您說的一樣,先用ReadOnly再Focus到其他地方了。 ===================引 用 carstyc 文 章=================== 這好像有點難,在TEdit 的 Event 沒有 onPaint 可以讓人家去重畫。 但有個賤招您參考一下 把 TEdit 設成 ReadOnly 再把 TEdit 的底色改成灰色,讓它看起來很像Disable 無法點選。雖然它實際上還能點選。 如果還是怕User去點到它時,就在它的 OnEnter Event中去把Focus 轉到別的地方去。這樣User永遠就點不到它了。 PS. 你原本的需求是要把 Disable 的 TEdit 字體變成黑色,可是如果變成黑色,不就跟未Disable的 TEdit 長的一模一樣,這樣User不是一樣也分不出來。 ===================引 用 zoezoe 文 章=================== 我的程式有瀏覽及編輯兩個狀態~ 當還沒按下編輯模式的時候~所有Edit都是呈現Enable = false 的狀態 為何我不用ReadOnly是因為還是可以去選取它,這樣會讓使用者誤以為可以編輯 所以我才要把Edit關起來,按下編輯模式時才打開。 現在是因為把Edit關起來的字變灰色的顯示不清楚不好看的關係才會問問各位前輩們有沒有辦法 |
taishyang
站務副站長 發表:377 回覆:5490 積分:4563 註冊:2002-10-08 發送簡訊給我 |
依樣畫葫蘆
請參考 http://delphi.ktop.com.tw/board.php?cid=168&fid=1499&tid=98534 然後試試 void __fastcall TForm1::Button1Click(TObject *Sender) { HDC hdc; Graphics::TBitmap *bmp = new Graphics::TBitmap(); hdc = GetDC(Edit1->Handle); bmp->Width = Edit1->Width; bmp->Height = Edit1->Height; bmp->Canvas->Font->Color = clBlack; bmp->Canvas->TextOutA(1, 1, "Edit1"); BitBlt(hdc, 0, 0, bmp->Width, bmp->Height, bmp->Canvas->Handle, 0, 0, SRCAND); delete bmp; DeleteDC(hdc); } |
GrandRURU
站務副站長 發表:240 回覆:1680 積分:1874 註冊:2005-06-21 發送簡訊給我 |
|
sryang
尊榮會員 發表:39 回覆:762 積分:920 註冊:2002-06-27 發送簡訊給我 |
|
GrandRURU
站務副站長 發表:240 回覆:1680 積分:1874 註冊:2005-06-21 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |