由于QT版本更新,QT里面的WebView控件找不到了,不过通过查找一些资料和自己的摸索,终于明白如何使用QT里面的AxWidget去替换WebView。
首先在UI里面添加一个QAxWidget的控件拉到UI上面去
QAxWidget:
做好这步以后还需要将你的QAxWidget提升为WebQAxWidget这时候基本搞定了UI设计的控件要求
下面是我制作的的一个地图显示的源代码
#include "map.h"
#include "ui_map.h"
#include "QApplication"
#include "QListWidgetItem"
#include "QListWidget"
#include "QMessageBox"
#include "QDir"
#include "QFileDialog"
#include "QFile"
#include "QListWidgetItem"
#include "QDebug"
#include "QVariant"
#include "QAbstractEventDispatcher"
#include "QUrl"
#include "QNetworkAccessManager"
#include "QNetworkRequest"
#include "QNetworkReply"
#include "QUrlQuery"
#include "QtNetwork"
#include "QDesktopWidget"
#include "QHttpPart"
#include "QFrame"
Map::Map(QWidget *parent) :
QWidget(parent),
ui(new Ui::Map)
{
ui->setupUi(this);
setWindowTitle("Map");
setMaximumHeight(408);
setMinimumHeight(408);
setMaximumWidth(399);
setMinimumWidth(399);
//ui->addrLineEdit->setText("https://www.baidu.com/");
this->showBaiduMap();
connect(ui->goCityBtn,SIGNAL(clicked(bool)),this,SLOT(showAddrWeb()));
connect(ui->mapBtn,SIGNAL(clicked(bool)),this,SLOT(showBaiduMap()));
connect(ui->DispalyThething,SIGNAL(clicked(bool)),this,SLOT(ShowDataMapSlots()));
}
Map::~Map()
{
delete ui;
}
void Map::webShow(const QString &url)
{
ui->webBrowser->dynamicCall("Navigate(const QString&)",url); //打开一个网站在webBrower控件内
}
void Map::showAddrWeb()
{
QString addr=ui->addrLineEdit->text();
//if((addr.indexOf("www")!=0)&&(addr.indexOf("http")!=0)) return;
webShow(addr);
}
void Map::showBaiduMap()
{
QString mapHtml=QDir::currentPath()+"/MapFile/BaiduMap.html";
qDebug()<<QDir::currentPath();
//qDebug()<<myurl;
//ui->addrLineEdit->setText("地图");
webShow(mapHtml);
}
void Map::ShowDataMapSlots()
{
}
/*
QUrl Map::GPSMark(const QString &GPSCoordinate)
{
QUrl temp;
QString ret;
HttpClient * http = new HttpClient();
QUrl url;
url.setUrl("http://api.map.baidu.com/marker");
QUrlQuery urlQuery;
urlQuery.addQueryItem("location", GPSCoordinate);
urlQuery.addQueryItem("title", tr("my GPS location")); //标点的标题
urlQuery.addQueryItem("content", tr("current location")); //标点的内容
urlQuery.addQueryItem("output", "html");
urlQuery.addQueryItem("coord_type", "bd09");
urlQuery.addQueryItem("src", "map");
url.setQuery(urlQuery);
http://map.baidu.com/?latlng=40.047669,116.313082&title=my gps loclation
url = QUrl("http://map.baidu.com/?latlng=40.047669,116.313082&title=我的位置&content=百度奎科大厦&autoOpen=true&l");
webShow(url);
setWindowTitle(url.toString());
return temp;
}*/
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。