看板 C_and_CPP 關於我們 聯絡資訊
各位好,小弟我有個問題,先列出我的程式碼片段 hEdit = CreateWindow ("edit", "", WS_VISIBLE|WS_CHILD|ES_MULTILINE, ix, iy, iWidth, iHeight, hwnd, NULL, hInstance, NULL); hBrushEdit = CreateSolidBrush (RGB (255, 255, 255)); hdc = GetDC(hEdit); SelectObject(hdc, hBrushEdit); SetBkColor(hdc, RGB(255,255,255)); 我用CreateWindow ("edit"........) 創了一個編輯控制項 我想要把創出來的這個編輯控制項換字的顏色跟背景顏色 但我現在的做法並沒辦法改變背景的顏色, 所以上網找了一下發現需要在WM_CTLCOLOREDIT這個訊息內去處理 但現在有個問題就是,WM_CTLCOLOREDIT這個訊息似乎是傳給父視窗的wndproc 但我目前的寫法,父視窗的wndproc沒辦法直接使用編輯控制項的hwnd 所以我沒辦法在父視窗的wndproc底下處理WM_CTLCOLOREDIT 而WM_CTLCOLOREDIT看書上解釋又只會傳給父視窗....所以現在卡住了.... 想請教一下,有方法不透過WM_CTLCOLOREDIT直接去改顏色嗎??? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 221.169.233.120 ※ 編輯: lovecold 來自: 221.169.233.120 (07/22 11:01)
hermen:你再WM_CTLCOLOREDIT最後是break;嗎? 07/22 13:15
hermen:如果是的話改return brush;看看 07/22 13:17
我的意思是,不要透過WM_CTLCOLOREDIT來改顏色,直接使用api改, 因為我目前的寫法會沒辦法直接使用編輯控制項的hwnd...麻煩各位了^^ ※ 編輯: lovecold 來自: 221.169.233.120 (07/22 13:55)