qt5中使用对话框选择图片,想必选择其他文件类型也与之类似。
#include <QFileDialog>
void MainWindow::on_pushButton_clicked()
{
//获取文件名和路径,同时加入筛选功能
QString fileName = QFileDialog::getOpenFileName(this,
tr("open iamge"),//对话框名称
".",//默认打开文件位置“.”文件目录"/"根目录
tr("image files(*.jpg *.png *.bmp)"));//筛选器
image = cv::imread(fileName.toLatin1().data());
// 使用lebel显示之前获取的文件名和路径
ui->label->setText(fileName);
cv::imshow("image", image);
}
在qt4中 fileName.toAscii.data()为qt5的fileName.toLatin1().data()取代;
image = cv::imread(fileName.toLatin1().data());按inread的语法第一个参数应为字符串,故fileName.toLatin1().data()应为返回字符串。