Delphi高手帮忙? ( 积分: 100 )

  • 主题发起人 主题发起人 mintb
  • 开始时间 开始时间
M

mintb

Unregistered / Unconfirmed
GUEST, unregistred user!
想把这段C++代码用到Delphi上,小弟C++学的菜,Delphi也是刚学,哪位高手帮忙写一下!![:)]

void CMiniDlg::OnButton5() //采集单帧存盘
{
//定义要使用倒的变量,temp 是char型数组长度为255
char Temp[255];
DWORD FrameNum,Size,BufInfo; //定义几个要用倒的变量为dword型,可以查看帮助

//下面三个对板卡的工作状态进行设置
MV_SetColorFormat(0,CF_RGB24); //设置当前板卡视频采集位数
MV_SetCaptureWindow(0,0,0,640,480); //设置采集窗口大小
MV_SetDisplayWindow(0,0,0,640,480); //设置显示窗口大小

//一样的进行设置,可以参考老师给你的文档
FrameNum = MV_GetBufferSize(0,&BufInfo,&Size); //获得可为本卡作为图象数据使用的缓存BUFFER的线性首地址和大小

//循环,,画面是有一张一张的图片组成,而一帧也就是一张图片,那么动态的食品该是很多帧,这里的帧数为FrameNum,通过上面一句获取这个值
for(DWORD i = 0 ; i < FrameNum ; i++)
{
MV_CaptureSingle(0,i); //采集单帧
}

//下面再保存
for(i=0 ; i < FrameNum ; i++)
{
MV_SaveToJpegFile(0,i,1,80,temp); //Jpeg方式存储
}

MessageBox(&quot;采集单帧到内存成功!&quot;);
}
 
想把这段C++代码用到Delphi上,小弟C++学的菜,Delphi也是刚学,哪位高手帮忙写一下!![:)]

void CMiniDlg::OnButton5() //采集单帧存盘
{
//定义要使用倒的变量,temp 是char型数组长度为255
char Temp[255];
DWORD FrameNum,Size,BufInfo; //定义几个要用倒的变量为dword型,可以查看帮助

//下面三个对板卡的工作状态进行设置
MV_SetColorFormat(0,CF_RGB24); //设置当前板卡视频采集位数
MV_SetCaptureWindow(0,0,0,640,480); //设置采集窗口大小
MV_SetDisplayWindow(0,0,0,640,480); //设置显示窗口大小

//一样的进行设置,可以参考老师给你的文档
FrameNum = MV_GetBufferSize(0,&amp;BufInfo,&amp;Size); //获得可为本卡作为图象数据使用的缓存BUFFER的线性首地址和大小

//循环,,画面是有一张一张的图片组成,而一帧也就是一张图片,那么动态的食品该是很多帧,这里的帧数为FrameNum,通过上面一句获取这个值
for(DWORD i = 0 ; i < FrameNum ; i++)
{
MV_CaptureSingle(0,i); //采集单帧
}

//下面再保存
for(i=0 ; i < FrameNum ; i++)
{
MV_SaveToJpegFile(0,i,1,80,temp); //Jpeg方式存储
}

MessageBox(&quot;采集单帧到内存成功!&quot;);
}
 
procedure TForm1.Button5Click(Sender: TObject);
var
//定义要使用倒的变量,temp 是char型数组长度为255
Temp: array[0..254] of Char;
i,FrameNum,Size,BufInfo: DWORD; //定义几个要用倒的变量为dword型,可以查看帮助
begin
//下面三个对板卡的工作状态进行设置
MV_SetColorFormat(0,CF_RGB24); //设置当前板卡视频采集位数
MV_SetCaptureWindow(0,0,0,640,480); //设置采集窗口大小
MV_SetDisplayWindow(0,0,0,640,480); //设置显示窗口大小

//一样的进行设置,可以参考老师给你的文档
FrameNum := MV_GetBufferSize(0,@BufInfo,@Size); //获得可为本卡作为图象数据使用的缓存BUFFER的线性首地址和大小

//循环,,画面是有一张一张的图片组成,而一帧也就是一张图片,那么动态的食品该是很多帧,这里的帧数为FrameNum,通过上面一句获取这个值
for i := 0 to FrameNum - 1 do
MV_CaptureSingle(0,i); //采集单帧

//下面再保存
for i := 0 to FrameNum - 1 do
MV_SaveToJpegFile(0,i,1,80,temp); //Jpeg方式存储

ShowMessage('采集单帧到内存成功!');
end;
 
procedure TForm1.button1Click(Sender: TObject); //采集单帧存盘
begin
//定义要使用倒的变量,temp 是char型数组长度为255
Temp: Array[0..255] of char;
FrameNum,Size,BufInfo,i: integer; //定义几个要用倒的变量为dword型,可以查看帮助

//下面三个对板卡的工作状态进行设置
MV_SetColorFormat(0,CF_RGB24); //设置当前板卡视频采集位数
MV_SetCaptureWindow(0,0,0,640,480); //设置采集窗口大小
MV_SetDisplayWindow(0,0,0,640,480); //设置显示窗口大小

//一样的进行设置,可以参考老师给你的文档
FrameNum = MV_GetBufferSize(0,BufInfo,Size); //获得可为本卡作为图象数据使用的缓存BUFFER的线性首地址和大小,参数用var 形式传递

//循环,,画面是有一张一张的图片组成,而一帧也就是一张图片,那么动态的食品该是很多帧,这里的帧数为FrameNum,通过上面一句获取这个值
for i: = 0 to FrameNum-1 do
MV_CaptureSingle(0,i); //采集单帧


//下面再保存
for i:=0 to FrameNum-1 do
MV_SaveToJpegFile(0,i,1,80,temp); //Jpeg方式存储
showMessage(&quot;采集单帧到内存成功!&quot;);
end;
 
谢谢!!
 
[Error] Unit1.pas(78): Undeclared identifier: 'long'
这个问题怎么解决
 
delphi里面是Longint
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
D
回复
0
查看
2K
DelphiTeacher的专栏
D
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
D
回复
0
查看
2K
DelphiTeacher的专栏
D
D
回复
0
查看
1K
DelphiTeacher的专栏
D
后退
顶部