求助:Qt工业相机的开发

u010265948 2015-06-03 08:06:54
本人新手菜鸟,下载了VS2013 add in 的Qt, 用来做USB2.0的工业相机开发,相机SDK都有,需要同时控制两个相机,同步捕获并保存两路图像或者视频。想先点击一个按钮获取相机的ID等信息,然后再点击另一个按钮,开始捕获,捕获的两路视频显示在两个窗口里。我试了把按钮当做槽,获取相机的信息并传到QListWidget中,但是点击按钮就是没反应,已经试了好几天了。想请教大神们指点一下。下面是.cpp文件的部分代码。
#include "uc480acquire.h"
#include "uc480.h"
#include "uc480_tools.h"
#include "uc480CaptureInterface.h"
#include "qinfodialog.h"
#include <QListWidgetItem>

UC480Acquire::UC480Acquire(QWidget *parent)
: QMainWindow(parent)
{
ui.setupUi(this);
}
DWORD getCamInfo()
{
int icamera = 0;
INT numCams;
if (is_GetNumberOfCameras(&numCams) == IS_SUCCESS)
{
if (numCams >= 1)
{
UC480_CAMERA_LIST* pucl;
pucl = (UC480_CAMERA_LIST*) new BYTE[sizeof (DWORD)+numCams * sizeof (UC480_CAMERA_INFO)];
pucl->dwCount = numCams;

if (is_GetCameraList == IS_SUCCESS)
{
for (icamera; icamera < (int)pucl->dwCount; icamera++)
{
DWORD camID = pucl->uci[icamera].dwCameraID;
DWORD devideID = pucl->uci[icamera].dwDeviceID;
//QListWidgetItem *item = new QListWidgetItem(QString::number(icamera),infolistWidget);
//item->setData(Qt::UserRole, QString::number(icamera));
//infolistWidget->setCurrentItem(item);
//std::cout << "Camera" << icamera << "Id:" << pucl->uci[icamera].dwCameraID;
return camID;
}
}
}
}
}

void UC480Acquire::on_loadInfoBt_clicked()
{
/*QInfoDialog qinfodialog(this);
qinfodialog.exec();*/
DWORD camid=getCamInfo();
QListWidget* infolistWidget = new QListWidget;
QListWidgetItem *item = new QListWidgetItem(QString::number(camid),infolistWidget);
item->setData(Qt::UserRole, QString::number(camid));
infolistWidget->addItem(item);
}
...全文
747 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
qq_22191851 2017-03-04
  • 打赏
  • 举报
回复
我刚开始学着,想请教一个问题,我用qt开发相机,用槽函数把开发包里面的main函数放进去,一直报错,报错内容是各种Camera..开头的函数都未定义,但我CameraApi都加进去了,请问这个怎么回事啊?
u010265948 2015-06-04
  • 打赏
  • 举报
回复
引用 5 楼 jiqiang01234 的回复:
得看Qt Assistant的相关文档,里面详细描述了各个控件的信号和槽
好吧,我再研究研究~
jiqiang01234 2015-06-04
  • 打赏
  • 举报
回复
得看Qt Assistant的相关文档,里面详细描述了各个控件的信号和槽
u010265948 2015-06-04
  • 打赏
  • 举报
回复
引用 3 楼 jiqiang01234 的回复:
无论在哪里设置,最终都是调用代码来实现信号/槽连接的。我印象Qt在vs中的插件,不能自动生成信号/槽的连接函数,需要自己手动添加
是的,Qtcreater 可以自动添加信号和槽函数。想问一下,连接相机之后,获取了相机的ID等信息之后,通过点击按钮,将这些信息显示在Qlistwidget中,这一过程,哪是信号,哪是槽,该怎么实现呢?
jiqiang01234 2015-06-04
  • 打赏
  • 举报
回复
无论在哪里设置,最终都是调用代码来实现信号/槽连接的。我印象Qt在vs中的插件,不能自动生成信号/槽的连接函数,需要自己手动添加
u010265948 2015-06-04
  • 打赏
  • 举报
回复
引用 1 楼 jiqiang01234 的回复:
你确定按钮的信号/槽正确连接?
我不太确定,没太懂信号与槽,如果在程序里加入slot语句,那么Qt设计师里面就不需要再连信号与槽了吧?
jiqiang01234 2015-06-04
  • 打赏
  • 举报
回复
你确定按钮的信号/槽正确连接?

16,216

社区成员

发帖
与我相关
我的任务
社区描述
Qt 是一个跨平台应用程序框架。通过使用 Qt,您可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。
社区管理员
  • Qt
  • 亭台六七座
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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