MFC中卡拉OK字体的定时器实现,使用DC的DrawText函数实现
生活随笔
收集整理的這篇文章主要介紹了
MFC中卡拉OK字体的定时器实现,使用DC的DrawText函数实现
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1 void CTextView::OnTimer(UINT_PTR nIDEvent)
2 {
3 m_nWidth += 5; // 在構造函數中初始化為 0;
4
5 CClientDC dc( this );
6 TEXTMETRIC tm;
7 dc.GetTextMetrics( &tm );
8 CRect rect;
9 rect.left = 0;
10 rect.top = 200;
11 rect.right = m_nWidth;
12 rect.bottom = rect.top + tm.tmHeight;
13 dc.SetTextColor( RGB(255, 0, 0) ); // 字體設置成紅色
14 CString str;
15 str.LoadStringW( IDS_STRINGVC );
16 dc.DrawText( str, rect, DT_LEFT); // 效果實現的核心函數,用來控制顯示的矩形大小來控制效果
17
18 CSize sz = dc.GetTextExtent( str );
19 if( m_nWidth > sz.cx ) // 超過字體長度時候從頭顯示
20 {
21 m_nWidth = 0;
22 dc.SetTextColor( RGB(0, 255, 0) );
23 dc.TextOutW( 0, 200, str );
24 }
25
26 CView::OnTimer(nIDEvent);
27 }
效果如下所示:
總結
以上是生活随笔為你收集整理的MFC中卡拉OK字体的定时器实现,使用DC的DrawText函数实现的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Exynos4412 IIC总线驱动开发
- 下一篇: 服务端架构中的“网关服务器”