| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2170 人关注过本帖
标题:非常平滑的水平字幕滚动 不能滚动中文问题?
取消只看楼主 加入收藏
xzqsml
Rank: 2
等 级:论坛游民
帖 子:41
专家分:47
注 册:2008-6-15
结帖率:90.91%
收藏
 问题点数:0 回复次数:2 
非常平滑的水平字幕滚动 不能滚动中文问题?
问题,只能滚动"VB";不能滚动"VB论坛";中文不行
问题好像在
Private Sub Scroll()

End Sub
中....

代码如下 :
Option Explicit

Private TextLine  As String  '文字信息
Private Index     As Long    '字符索引

Private Scrolling As Boolean '滚动标志
Private t         As Long    '帧延时

Private RText     As RECT
Private RClip     As RECT
Private RUpdate   As RECT

Private Sub Form_Load()
    TextLine = "VB论坛"
End Sub

Private Sub Form_Unload(Cancel As Integer)
    Scrolling = 0 '!
End Sub

Private Sub cmdScroll_Click()
    '-- 开始滚动
    Scrolling = -1
    Index = 1
    Scroll
End Sub

Private Sub Scroll()

  Dim Char As String
  
    With iScroll
         SetRect RClip, 1, 2, .ScaleWidth, .ScaleHeight
         SetRect RText, .ScaleWidth, 2, .ScaleWidth + .TextWidth(Left$(TextLine, 1)), .ScaleHeight
    End With

    Char = Left$(TextLine, 1)

    With iScroll

        Do
            If (timeGetTime - t >= 30) Then

                t = timeGetTime

                If (RText.Right <= .ScaleWidth) Then

                    Index = Index + 1
                    Char = Mid$(TextLine, Index, 1)
                    SetRect RText, .ScaleWidth, 2, .ScaleWidth + .TextWidth(Mid$(TextLine, Index, 1)), .ScaleHeight
                End If

                DrawText .hdc, Char, 1, RText, &H0

                OffsetRect RText, -1, 0

                ScrollDC .hdc, -1, 0, RClip, RClip, 0, RUpdate
                iScroll.Line (.ScaleWidth - 1, 0)-(.ScaleWidth - 1, .ScaleHeight - 1), .BackColor
            End If

            If (Index > Len(TextLine)) Then Index = 0
            DoEvents
            
        Loop Until Scrolling = 0
    End With
End Sub

非常平滑的字幕滚动.rar (7.09 KB)
←已上传附件. 请指教...

[ 本帖最后由 xzqsml 于 2009-11-24 11:07 编辑 ]
搜索更多相关主题的帖子: 滚动 水平 中文 字幕 
2009-11-24 10:30
xzqsml
Rank: 2
等 级:论坛游民
帖 子:41
专家分:47
注 册:2008-6-15
收藏
得分:0 
TextLine = "VB论坛"
TextLine 里面的中文不能滚动啊???
2009-11-24 11:58
xzqsml
Rank: 2
等 级:论坛游民
帖 子:41
专家分:47
注 册:2008-6-15
收藏
得分:0 
Char = Mid$(TextLine, Index, 1)
是不是跟这个有关呢??
2009-11-24 12:23
快速回复:非常平滑的水平字幕滚动 不能滚动中文问题?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.013020 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved