如何在视频显示窗口中叠加文字?????????

hztgames 2002-12-27 09:53:39
我用VB制作了一个播放器,用PictureBox控件作为显示窗。播放视频的时候我想在视频窗口上显示些文字,而且文字的背景要为透明的,效果就象超级解霸一样,请问有那些控件和方法可以用????如何实现
谢谢大家!!!
...全文
258 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
hztgames 2002-12-30
  • 打赏
  • 举报
回复
怎么没有人回答吗????
nik_Amis 2002-12-27
  • 打赏
  • 举报
回复
Private Declare Function DeleteObject Lib "gdi32" (ByVal hObject As Long) As Long
Private Declare Function CreateFont Lib "gdi32" Alias "CreateFontA" (ByVal nHeight As Long, ByVal nWidth As Long, ByVal nEscapement As Long, ByVal nOrientation As Long, ByVal fnWeight As Long, ByVal fdwItalic As Boolean, ByVal fdwUnderline As Boolean, ByVal fdwStrikeOut As Boolean, ByVal fdwCharSet As Long, ByVal fdwOutputPrecision As Long, ByVal fdwClipPrecision As Long, ByVal fdwQuality As Long, ByVal fdwPitchAndFamily As Long, ByVal lpszFace As String) As Long
Private Declare Function SelectObject Lib "gdi32" (ByVal hdc As Long, ByVal hObject As Long) As Long
Private Declare Function TextOut Lib "gdi32" Alias "TextOutA" (ByVal hdc As Long, ByVal x As Long, ByVal y As Long, ByVal lpString As String, ByVal nCount As Long) As Long






Private Sub pic_Paint()
TextOut pic.hdc, (pic.Width / Screen.TwipsPerPixelX) / 2, (pic.Height / Screen.TwipsPerPixelY) / 2, Message, Len(Message)

End Sub

Function CreateMyFont(nSize As Integer, nDegrees As Long) As Long
CreateMyFont = CreateFont(-MulDiv(nSize, GetDeviceCaps(GetDC(0), LOGPIXELSY), 72), 0, nDegrees * 10, 0, FW_NORMAL, False, False, False, DEFAULT_CHARSET, OUT_DEFAULT_PRECIS, CLIP_DEFAULT_PRECIS, PROOF_QUALITY, DEFAULT_PITCH, "Times New Roman")
End Function

Private Sub Form_Load()
dim ang
angt=0
DeleteObject SelectObject(pic.hdc, CreateMyFont(24, ang))

End Sub









hztgames 2002-12-27
  • 打赏
  • 举报
回复
这里我用的是MciSendString
nik_Amis 2002-12-27
  • 打赏
  • 举报
回复
你是使用的什么来播放电影?是ActiveMoive Control 么?还是别的什么?
你能得到他的HDC么?hwnd?

你看一下paint事件里,显示影像和字的顺序

1,453

社区成员

发帖
与我相关
我的任务
社区描述
VB 控件
社区管理员
  • 控件
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧