Click here to Skip to main content
16,012,508 members

Comments by lzeng1986 (Top 2 by date)

lzeng1986 19-Jun-12 10:52am View    
Deleted
Thanks.As you can see that,I'm a Chinese,my ultimate goals is that:
I want to write some Chinese char on a draw board, such as Form,Panel,PictureBox ,...,which is usually a Type Inherit from Control.
Now I can write some English char on the board using DrawString function in GDI+ ,but I can't write Chinese char correctly, the board failed to get the focus of IME. I found that if I inherit a Type from Control, and override the "CanEnableIme" property,and let it return True(the property is readonly), the new Type could get the focus.
And then override the "CanEnableIme" property, I found that when I input one char using the Chinese IME ,the GDI+ draw the char twice,not only the Chinese char, also the English char.The reason of the error is that:when you open the IME and input something,the windows send two message "WM_CHAR" and "WM_IME_CHAR", the KeyPress event Triggered twice, so each char draw twice. That is why I want to override the PreProcessMessage function, for filtering the unnecessary msg.
That is all.
lzeng1986 19-Jun-12 10:12am View    
Yes,I write the code in the OnPaint event:

protected overridevoid OnPaint(PaintEventArgs e)
{
e.Graphics.DrawImage(...);
}
but it failed yet!
}