TVideoGrabber的使用(一)捕捉摄像头
使用TVideoGrabber捕捉摄像头,相当容易,只需几句代码即可解决问题,首先我们新建一个工程,然后从控件面板上拉取一个TVideoGrabber控件到窗体中,然后再在窗体上放置四个Button,分别将Caption设为播放,暂停,停止,关闭,name分别设为BtnPlay,BtnPause,BtnStop,BtnClose将TVideoGrabber1的VideoSource的属性设置为vs_VideoCaptureDevice
为各个按钮添加点击事件,完整代码如下:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls, VidGrab;
type
TForm1 = class(TForm)
VideoGrabber1: TVideoGrabber;
BtnPlay: TButton;
BtnPause: TButton;
BtnStop: TButton;
BtnClose: TButton;
procedure BtnPlayClick(Sender: TObject);
procedure BtnPauseClick(Sender: TObject);
procedure BtnStopClick(Sender: TObject);
procedure BtnCloseClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
//开启视屏
procedure TForm1.BtnPlayClick(Sender: TObject);
begin
videoGrabber1.StartPreview;
end;
//暂停或继续
procedure TForm1.BtnPauseClick(Sender: TObject);
begin
if BtnPause.Caption = '暂停' then
begin
btnPause.Caption := '继续';
VideoGrabber1.PausePreview;
end
else
begin
btnPause.Caption := '暂停';
VideoGrabber1.ResumePreview;
end;
end;
//停止视屏
procedure TForm1.BtnStopClick(Sender: TObject);
begin
videoGrabber1.StopPreview;
end;
//关闭窗体
procedure TForm1.BtnCloseClick(Sender: TObject);
begin
close;
end;
end.
{以上代码在Delphi7+XP}
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
· [.NET]调用本地 Deepseek 模型
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· .NET Core 托管堆内存泄露/CPU异常的常见思路
· PostgreSQL 和 SQL Server 在统计信息维护中的关键差异
· DeepSeek “源神”启动!「GitHub 热点速览」
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· 我与微信审核的“相爱相杀”看个人小程序副业
· C# 集成 DeepSeek 模型实现 AI 私有化(本地部署与 API 调用教程)
· spring官宣接入deepseek,真的太香了~