frmDocument.frm
上传用户:szlwled
上传日期:2022-06-30
资源大小:95k
文件大小:7k
源码类别:

视频捕捉/采集

开发平台:

Visual Basic

  1. VERSION 5.00
  2. Begin VB.Form frmVideo 
  3.    Caption         =   "Video1"
  4.    ClientHeight    =   4065
  5.    ClientLeft      =   60
  6.    ClientTop       =   450
  7.    ClientWidth     =   6465
  8.    LinkTopic       =   "Form1"
  9.    MDIChild        =   -1  'True
  10.    ScaleHeight     =   4065
  11.    ScaleWidth      =   6465
  12.    Visible         =   0   'False
  13.    Begin VB.Frame Frame1 
  14.       Caption         =   "显示比例"
  15.       Height          =   2415
  16.       Left            =   4800
  17.       TabIndex        =   1
  18.       Top             =   360
  19.       Width           =   1335
  20.       Begin VB.OptionButton optRatio 
  21.          Caption         =   "自定义"
  22.          Height          =   375
  23.          Index           =   3
  24.          Left            =   120
  25.          TabIndex        =   7
  26.          Top             =   1560
  27.          Width           =   1095
  28.       End
  29.       Begin VB.TextBox txtOther 
  30.          Alignment       =   1  'Right Justify
  31.          Enabled         =   0   'False
  32.          Height          =   270
  33.          Left            =   360
  34.          TabIndex        =   5
  35.          Top             =   1920
  36.          Width           =   615
  37.       End
  38.       Begin VB.OptionButton optRatio 
  39.          Caption         =   "200%"
  40.          Height          =   375
  41.          Index           =   2
  42.          Left            =   120
  43.          TabIndex        =   4
  44.          Top             =   1160
  45.          Width           =   1095
  46.       End
  47.       Begin VB.OptionButton optRatio 
  48.          Caption         =   "150%"
  49.          Height          =   375
  50.          Index           =   1
  51.          Left            =   120
  52.          TabIndex        =   3
  53.          Top             =   760
  54.          Width           =   1095
  55.       End
  56.       Begin VB.OptionButton optRatio 
  57.          Caption         =   "100%"
  58.          Height          =   375
  59.          Index           =   0
  60.          Left            =   120
  61.          TabIndex        =   2
  62.          Top             =   360
  63.          Value           =   -1  'True
  64.          Width           =   1095
  65.       End
  66.       Begin VB.Label Label2 
  67.          AutoSize        =   -1  'True
  68.          Caption         =   "%"
  69.          Height          =   180
  70.          Left            =   1080
  71.          TabIndex        =   6
  72.          Top             =   1965
  73.          Width           =   90
  74.       End
  75.    End
  76.    Begin VB.Timer timer1 
  77.       Enabled         =   0   'False
  78.       Interval        =   10
  79.       Left            =   5280
  80.       Top             =   3000
  81.    End
  82.    Begin VB.PictureBox picVideo 
  83.       Appearance      =   0  'Flat
  84.       AutoRedraw      =   -1  'True
  85.       BackColor       =   &H00000000&
  86.       BorderStyle     =   0  'None
  87.       ForeColor       =   &H80000008&
  88.       Height          =   3495
  89.       Left            =   240
  90.       ScaleHeight     =   3495
  91.       ScaleWidth      =   4095
  92.       TabIndex        =   0
  93.       TabStop         =   0   'False
  94.       Top             =   240
  95.       Width           =   4095
  96.    End
  97. End
  98. Attribute VB_Name = "frmVideo"
  99. Attribute VB_GlobalNameSpace = False
  100. Attribute VB_Creatable = False
  101. Attribute VB_PredeclaredId = True
  102. Attribute VB_Exposed = False
  103. Dim strTemp As String   '模块变量,保存临时文件名
  104. Private Sub Form_Activate() '窗体激活事件
  105.     picVideo.Width = frmCamera.ezVidCap1.Width  '设置图片控件的宽度
  106.     picVideo.Height = frmCamera.ezVidCap1.Height  '设置图片控件的高度
  107.     Frame1.Top = picVideo.Top   '框架顶部与图片控件顶部对齐
  108.     Frame1.Left = picVideo.Left + picVideo.Width + 200  '设置框架左边距
  109.     If Me.WindowState <> vbMaximized Then '若窗体不是最大化状态
  110.         Me.Width = Frame1.Left + Frame1.Width + 400 '设置窗体的宽度
  111.         Me.Height = picVideo.Top + picVideo.Height + 800 '设置窗体的高度
  112.         If Me.Height < Frame1.Top + Frame1.Height + 800 Then '若窗体小于框架
  113.             Me.Height = Frame1.Top + Frame1.Height + 800 '设置窗体的高度
  114.         End If
  115.     End If
  116. End Sub
  117. Private Sub Form_Load()
  118.     optRatio_Click (0)  '选中100%
  119.     strTemp = App.Path & "TEMPT" & Format(Now, "yyyymmddhhmmss") & ".tmp" '设置临时文件名
  120.     timer1.Enabled = True   '允许时钟控件
  121. End Sub
  122. Private Sub Form_Unload(Cancel As Integer)
  123.     frmMain.tbToolBar.Buttons(1).Value = tbrUnpressed   '弹起工具栏中的预览按钮
  124.     frmMain.mnuPre1.Checked = False '取消预览菜单的选中状态
  125. End Sub
  126. Private Sub optRatio_Click(Index As Integer)    '显示比例单选按钮
  127.     timer1.Enabled = False  '禁止时钟控件
  128.     Select Case Index
  129.     Case 0  '100%
  130.         picVideo.Width = frmCamera.ezVidCap1.Width  '设置图片控件的宽度
  131.         picVideo.Height = frmCamera.ezVidCap1.Height      '设置图片控件的高度
  132.     Case 1  '150%
  133.         picVideo.Width = frmCamera.ezVidCap1.Width * 1.5  '设置图片控件的宽度
  134.         picVideo.Height = frmCamera.ezVidCap1.Height * 1.5    '设置图片控件的高度
  135.     Case 2  '200%
  136.         picVideo.Width = frmCamera.ezVidCap1.Width * 2  '设置图片控件的宽度
  137.         picVideo.Height = frmCamera.ezVidCap1.Height * 2    '设置图片控件的高度
  138.     Case 3 '自定义
  139.         txtOther.Enabled = True '允许文本框输入内容
  140.         txtOther.SetFocus   '设置焦点
  141.         Exit Sub    '退出过程
  142.     End Select
  143.     Frame1.Left = picVideo.Left + picVideo.Width + 200  '设置框架坐标
  144.     If Me.WindowState <> vbMaximized Then   '若窗体不是最大化状态
  145.         Me.Width = Frame1.Left + Frame1.Width + 400 '设置窗体宽
  146.         Me.Height = picVideo.Top + picVideo.Height + 800 '设置窗体的高度
  147.         If Me.Height < Frame1.Top + Frame1.Height + 800 Then '若窗体小于框架
  148.             Me.Height = Frame1.Top + Frame1.Height + 800 '设置窗体的高度
  149.         End If
  150.     End If
  151.     txtOther.Enabled = False    '禁止文本框
  152.     timer1.Enabled = True   '允行时间控件
  153. End Sub
  154. Private Sub picVideo_DblClick() '双击图片控件
  155.     timer1.Enabled = False  '禁止时钟控件
  156.     frmFull.Show vbModal    '显示全屏窗体
  157.     timer1.Enabled = True   '允许时钟控件
  158. End Sub
  159. Private Sub timer1_Timer()
  160.     With frmCamera.ezVidCap1
  161.         If .CapSingleFrame Then '获取一个单帧
  162.             picVideo.Cls   '清空图片控件
  163.             .SaveDIB strTemp         '保存当前帧到临时文件
  164.             picVideo.PaintPicture LoadPicture(strTemp), 0, 0, picVideo.Width, picVideo.Height   '在图片控件中绘制捕获的图片
  165.             Kill strTemp  '删除捕获文件
  166.         End If
  167.     End With
  168. End Sub
  169. Private Sub txtOther_KeyPress(KeyAscii As Integer)
  170.     If KeyAscii = 13 Then   '若按回车键
  171.         Call txtOther_Validate(False)   '调用过程,完成显示比例设置
  172.     ElseIf KeyAscii <= Asc("0") Or KeyAscii >= Asc("9") Then    '若输入的不是0~9的数值
  173.         KeyAscii = 0    '取消输入值
  174.     End If
  175. End Sub
  176. Private Sub txtOther_Validate(Cancel As Boolean)
  177.     timer1.Enabled = False  '禁止时钟控件
  178.     If Val(txtOther.Text) = 0 Then txtOther.Text = 100  '若输入的值非法,设置其值为100
  179.     picVideo.Width = frmCamera.ezVidCap1.Width * Val(txtOther.Text) / 100  '设置图片控件的宽度
  180.     picVideo.Height = frmCamera.ezVidCap1.Height * Val(txtOther.Text) / 100  '设置图片控件的高度
  181.     Frame1.Left = picVideo.Left + picVideo.Width + 200  '设置框架控件的坐标
  182.     If Me.WindowState <> vbMaximized Then      '若窗体不是最大化状态
  183.         Me.Width = Frame1.Left + Frame1.Width + 400 '设置窗体宽度
  184.         Me.Height = picVideo.Top + picVideo.Height + 800 '设置窗体高度
  185.         If Me.Height < Frame1.Top + Frame1.Height + 800 Then '若窗体小于框架
  186.             Me.Height = Frame1.Top + Frame1.Height + 800 '设置窗体的高度
  187.         End If
  188.     End If
  189.     timer1.Enabled = True   '允许时钟控件
  190. End Sub