我想问一下,我在WM_SETFOCUS中用CreateCaret函数在加上ShowCaret才能显示出插入符
而我在,WM_PAINT消息中在BeginPaint()与EndPaint()之间使用CreateCaret就可以直接显示出插入符,无须调用ShowCaret函数就可以出来了,我要在BeginPaint()和EndPaint()之外使用CreateCaret函数,须调用ShowCaret函数才能显示插入符?这是什么?
我在书上看,也是说,应该按着先增加一个插入符,然后在显示插入符的步骤进行,而为什么在BeginPaint()与EndPaint()之间直接调用CreateCaret函数无须调用ShowCaret就可以直接显示了呢?
而我在,WM_PAINT消息中在BeginPaint()与EndPaint()之间使用CreateCaret就可以直接显示出插入符,无须调用ShowCaret函数就可以出来了,我要在BeginPaint()和EndPaint()之外使用CreateCaret函数,须调用ShowCaret函数才能显示插入符?这是什么?
我在书上看,也是说,应该按着先增加一个插入符,然后在显示插入符的步骤进行,而为什么在BeginPaint()与EndPaint()之间直接调用CreateCaret函数无须调用ShowCaret就可以直接显示了呢?
而不需要ShowCaret这是因为窗口进行重绘,把插入符显示出来。
当你在其他地方调用CreateCaret后,因为没有刷新屏幕,所以显示不出来,调用ShowCaret估计也是刷新相关的区域来实现的,呵呵。
个人猜测而已。期待高人