我希望多行CEdit控件能够像滚动字幕一样缓慢地向下滚动。
到目前为止,我在OnTimer()事件中使用CEdit :: LineScroll()。它可以进行全线滚动,并不像我预期的那样顺畅。 我尝试用ScrollWindow()替换LineScroll(),这样我就可以按像素滚动文本,但是ScrollWindow()函数不会绘制应该滚动到控件中的新文本行。
任何人都知道如何实现这个目标?
如果我没有明确说明问题。我添加这些GIF: LineScroll()做什么(我只需要它更顺畅):
这就是ScrollWindow()所做的事情(以下文字被删除):
以下是ScrollWindow()的代码:
CRect clientRect;
m_editAns.GetClientRect(&clientRect);
m_editAns.ScrollWindow(0, -10, NULL, &clientRect);
m_editAns.UpdateWindow();
ValidateRect(&clientRect);
* PS:该项目使用CEdit控件,所以我不能用另一个控件替换它,尽管继承是可以接受的。