所以,当我按下按钮时,我试图向文本浏览器显示一个html,我收到一条消息:无法找到字符串文字运算符'operator'“https'with'const char [38]','unsigned int'参数
这是我的代码
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <QApplication>
#include <QFile>
#include <QTextStream>
#include <QMessageBox>
#include <stdio.h>
#include <qlayoutitem>
#include <QString>
#include <QCoreApplication>
#include <QDir>
#include <QtCore>
#include <QFileDialog>
#include <QDesktopServices>
using namespace std;
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
}
MainWindow::~MainWindow()
{
delete ui;
}
void MainWindow::on_pushButton_clicked()
{
ui->textBrowser->setText("<html><body><iframe src=\"https://drive.google.com/file/d/0B4k6aYtTLhHbamxJNGNqTDZqWHM/preview\" width=\"640\" height=\"480\"></iframe></body></html>");
}
void MainWindow::on_pushButton_4_clicked()
{
QString link = "https://docs.google.com/forms/d/e/1FAIpQLSdazoZx2TpWblMfrvZGJwgvPl8qz4Ftxb0aOkht2bfUSklXcw/viewform";
QDesktopServices::openUrl(QUrl(link));
}
void MainWindow::on_pushButton_3_clicked()
{
QString link = "https://docs.google.com/forms/d/e/1FAIpQLSdazoZx2TpWblMfrvZGJwgvPl8qz4Ftxb0aOkht2bfUSklXcw/viewform";
QDesktopServices::openUrl(QUrl(link));
}
void MainWindow::on_pushButton_5_clicked()
{
QString link = "https://docs.google.com/forms/d/e/1FAIpQLSdazoZx2TpWblMfrvZGJwgvPl8qz4Ftxb0aOkht2bfUSklXcw/viewform";
QDesktopServices::openUrl(QUrl(link));
}
答案 0 :(得分:1)
转义引号
void MainWindow::on_pushButton_clicked()
{
ui->textBrowser->setText("<html><body><iframe src=\"MY GOOGLE DRIVE EMBED LINK\" width=\"640\" height=\"480\"></iframe></body></html>");
}
我还注意到您发布的代码不是失败的代码 - 请尝试发布真实代码
答案 1 :(得分:1)
问题在于:
ui->textBrowser->setText("<html><body><iframe src="MY GOOGLE DRIVE EMBED LINK" width="640" height="480"></iframe></body></html>");
有两种解决方案:
1)逃避内部双引号:
ui->textBrowser->setText("<html><body><iframe src=\"MY GOOGLE DRIVE EMBED LINK\" width=\"640\" height=\"480\"></iframe></body></html>");
2)用单引号替换内部双引号:
ui->textBrowser->setText("<html><body><iframe src='MY GOOGLE DRIVE EMBED LINK' width='640' height='480'></iframe></body></html>");