
| 语言: | Visual Basic 6 |
| 版本: | 3.0.3 |
| 发布于: | 2005年4月7日 |
| 作者: | IC Imaging Control 技术支持部 |
| 系统要求: | IC Imaging Control >2.1 由WDM数据流类驱动程序驱动的相机、视频转换器或图像采集卡 |
| |
全屏模式下显示的图像数据流经常需要被调整到屏幕尺寸的大小。 下面这个例子(Visual Basic)将演示如何使用 IC Imaging Control 剪裁图像。 需要注意的是,这里程序剪裁的只是显示出的图像,而并未对视频数据流本身做任何操作。
程序窗口如图所示:

程序开始后首先调用内置对话框 (.ShowDeviceSettingsDialog) 选择设备。 在函数 (Form_Load()) 的最后程序将通过 .LiveStart 开启设备传来的实时影像。 程序还需通知 IC Imaging Control 不使用图像数据流的默认分辨率 (.LiveDisplayDefault)。之后,使用屏幕的高和宽 (.Height and .Width) 确定视频显示的高和宽(.LiveDisplayHeight 和 .LiveDisplayWidth):
Private Sub Form_Load() ICImagingControl1.ShowDeviceSettingsDialog If Not ICImagingControl1.DeviceValid Then Unload Me Exit Sub End If Me.WindowState = vbMaximized Me.KeyPreview = True Me.ScaleMode = vbPixels ICImagingControl1.LiveDisplayDefault = False ICImagingControl1.LiveStart Timer1.Enabled = False Timer1.Interval = 1 End Sub
使用鼠标点击事件 (ICImagingControl1_MouseUp) 终止全屏显示。需要注意的是,在这个事件处理程序中不能使用 Unload Me,而应该使用一个 Timer 在一秒钟之后终止程序:
Private Sub ICImagingControl1_MouseUp(ByVal Button As Long, ByVal Shift As Long, ByVal XPos As Integer, ByVal YPos As Integer) Timer1.Enabled = True End Sub
同样也应让用户通过点击某一个键离开全屏模式,这就需要把属性 .KeyPreview 设置为 True,同时使用下面这个函数回应 ESC key:
Private Sub Form_KeyPress(KeyAscii As Integer) If KeyAscii = vbKeyEscape Then Unload Me End If End Sub
责任声明
IC Imaging Control 源代码库中的所有代码均只用于教学目的,The Imaging Source Europe GmbH 作为IC Imaging Control的开发制造商,不对任何由于使用本文或其中源代码所产生的后果承担责任。