Qt打开网页QAxWidget的续篇

网友投稿 318 2022-11-29

Qt打开网页QAxWidget的续篇

我最近研究用windows,qt5.9.7和ActiveQT做点事情,我实现了参考文献里面所涉及的内容,然后进一步修改了一下代码,我这里把代码分享出来,首先在pro文件中添加:

QT += core gui axcontainer

然后我的mainwindow.h文件为:

#ifndef MAINWINDOW_H#define MAINWINDOW_H#include #include #include #includenamespace Ui {class MainWindow;}class MainWindow : public QMainWindow{ Q_OBJECTpublic: explicit MainWindow(QWidget *parent = nullptr); ~MainWindow();private slots: void loadNavigate();private: Ui::MainWindow *ui; QLineEdit *lineUrl; QAxWidget* webWidget; QWidget* widget ;};#endif // MAINWINDOW_H

我的mainwindow.cpp文件为:

#include "mainwindow.h"#include "ui_mainwindow.h"#include MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow){ ui->setupUi(this); lineUrl = new QLineEdit; lineUrl->setText("baidu.com"); connect(lineUrl,SIGNAL(returnPressed()),this,SLOT(loadNavigate())); widget = new QWidget; webWidget = new QAxWidget; //设置ActiveX控件为IEMicrosoft Web Browser //设置ActiveX控件的id,最有效的方式就是使用UUID //此处的{8856F961-340A-11D0-A96B-00C04FD705A2}就是Microsoft Web Browser控件的UUID webWidget->setControl(QString::fromUtf8("{8856F961-340A-11D0-A96B-00C04FD705A2}")); webWidget->setObjectName(QString::fromUtf8("webWidget"));//设置控件的名称 webWidget->setFocusPolicy(Qt::StrongFocus);//设置控件接收键盘焦点的方式:鼠标单击、Tab键 webWidget->setProperty("DisplayAlerts",false); //不显示任何警告信息。 webWidget->setProperty("DisplayScrollBars",true); // 显示滚动条 QVBoxLayout *mainLayout = new QVBoxLayout; mainLayout->addWidget(lineUrl); mainLayout->addWidget(webWidget);// setLayout(mainLayout); widget->setLayout(mainLayout);// webWidget->setLayout(mainLayout); setCentralWidget(widget);// setWindowState(Qt::WindowMaximized);//最大化}MainWindow::~MainWindow(){ delete ui;}void MainWindow::loadNavigate(){ QString sUrl = lineUrl->text().trimmed(); webWidget->dynamicCall("Navigate(const QString&)",sUrl);}

然后其他的都是默认的,然后就可以编译执行了。

界面展示

参考文献

[1].Qt打开网页QAxWidge​

[2].Qt:Attempting to add QLayout "" to MainWindow "", which already has a layout.​​​​

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:[leetcode] 1400. Construct K Palindrome Strings
下一篇:java 音频转换wav格式标准音频的操作
相关文章

 发表评论

暂时没有评论,来抢沙发吧~