1.使用ShellExecute

效果图:

相关代码:

void Open_url::on_pushButton_clicked()
{
    QString path1 = "explorer.exe";
    QString url=ui->lineEdit->text();
    ShellExecute(NULL, L"open", path1.toStdWString().c_str(), url.toStdWString().c_str(), NULL, SW_SHOW);
}

测试:

输入内容 是否可以打开
www.json.cn/
https://www.json.cn/
http://www.json.cn/
https://v.qq.com/
http://v.qq.com/
v.qq.com/
v.qq.com
http://v.qq.com
https://www.IQIyi.com/
https://www.IQIYI.com/

总结:

输入的url必须:

(1)前面加http://或者https://,不可忽略。

(2)最后是否有/,没有影响。

(3)大小写,可能没有影响(因为测试很少)。

还有另一种写法:

参考:

用C++打开网页_c++网页运行-CSDN博客

效果图:

代码:

void open_url2::on_pushButton_clicked()
{
    QString url=ui->lineEdit->text();
    HINSTANCE v = ShellExecute(NULL, L"open", url.toStdWString().c_str(), NULL, NULL, SW_SHOW);
    int value = (int)v;
    ui->label_2->setText(QString::number(value));
}

2.参考:

QT打开网页 QURL - 一般首席 - 博客园 (cnblogs.com)

效果图: 

 代码:

void open_url3::on_pushButton_clicked()
{
    QUrl url(ui->lineEdit->text());
    bool flag=QDesktopServices::openUrl(url);
    if(flag)ui->label->setText("打开成功");
    else ui->label->setText("打开失败");
}

 

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐