字幕进度条和PM_设置字幕在VB6中被忽略
我刚刚尝试在我的一个VB6应用程序中设置滚动字幕进度条,虽然它似乎切换到字幕模式,但自动定时器(设置通过)要么失败,要么被忽略字幕进度条和PM_设置字幕在VB6中被忽略,vb6,progress-bar,common-controls,Vb6,Progress Bar,Common Controls,我刚刚尝试在我的一个VB6应用程序中设置滚动字幕进度条,虽然它似乎切换到字幕模式,但自动定时器(设置通过)要么失败,要么被忽略 我有一个合适的视觉风格清单 我在表单的Initialize事件中调用了InitCommonControls 我使用的是v5 SP2通用控件 该项目已编制完成 我已通过SetWindowLong设置了PBS\u字幕样式,并确认其已应用 PBM_SETMARQUEE消息返回1 结果是: 如果我最小化并恢复窗口,它将前进一步 如果我设置.Value,它将前进一步 如果我
- 我有一个合适的视觉风格清单
- 我在表单的
事件中调用了Initialize
InitCommonControls
- 我使用的是v5 SP2通用控件
- 该项目已编制完成
- 我已通过
设置了SetWindowLong
样式,并确认其已应用PBS\u字幕
消息返回1PBM_SETMARQUEE
- 如果我最小化并恢复窗口,它将前进一步
- 如果我设置
,它将前进一步.Value
- 如果我发送
它将前进一步PBM\u STEPIT
- 如果我发送
它就在那里什么也不做PBM_SETMARQUEE
PBM_SETMARQUEE
enable消息,那么最小化/恢复不会导致它进行,这表明计时器有问题
这与本文讨论的问题相同
有没有人对VB包装器为什么要删除PBM_SETMARQUEE
消息或相关的计时器事件有更深入的了解,以及我为什么需要“手动”执行此操作
这是取得进展所必需的
Private Sub Timer1_Timer()
SendMessage ProgressBar1.hWnd, PBM_STEPIT, 0, ByVal 0&
End Sub
表明它是特定于操作系统的。我已经用一个定期发送
PBM\u STEPIT
的外部定时器替换了PBM\u SETMARQUEE
。您也可以只设置。Value=0
每个定时器滴答声,而不是发送消息。2007年这里也描述了同样的问题:
Private Sub Timer1_Timer()
SendMessage ProgressBar1.hWnd, PBM_STEPIT, 0, ByVal 0&
End Sub