内嵌网页QwebView


1 

pro:



QT       += core gui webkit


greaterThan(QT_MAJOR_VERSION, 4): QT += widgets webkitwidgets


=========使exe生成在bin目录下===========

pro:

INCLUDEPATH += $$PWD
MOC_DIR     = temp/moc
RCC_DIR     = temp/rcc
UI_DIR      = temp/ui
OBJECTS_DIR = temp/obj
DESTDIR     = bin


2

    ui->webView->load(QUrl(qApp->applicationDirPath()+"/html/chord.html"));


### 实现 PyQt 中 QWebEngineView 或 QWebView 的全屏显示 要在 PyQt 中实现 `QWebEngineView` 或 `QWebView` 的全屏显示,可以通过设置窗口属性来完成。以下是具体方法: #### 方法一:通过设置窗口标志和状态实现全屏 可以使用 `QWidget.setWindowState()` 和 `Qt.WindowFullScreen` 来切换窗口的全屏模式。 ```python from PyQt5.QtCore import Qt from PyQt5.QtWidgets import QApplication, QMainWindow from PyQt5.QtWebEngineWidgets import QWebEngineView class MainWindow(QMainWindow): def __init__(self): super().__init__() self.browser = QWebEngineView() self.browser.load("https://www.example.com") # 加载网页 self.setCentralWidget(self.browser) def toggle_fullscreen(self): if self.windowState() & Qt.WindowFullScreen: self.showNormal() else: self.showFullScreen() if __name__ == "__main__": app = QApplication([]) mainWin = MainWindow() mainWin.show() # 绑定按键事件或其他触发方式调用 full_screen 函数 from PyQt5.QtGui import QKeySequence mainWin.addAction(mainWin.toggle_fullscreen) mainWin.setWindowTitle('PyQt Web FullScreen Example') exit(app.exec_()) ``` 上述代码展示了如何创建一个带有 `QWebEngineView` 的主窗口,并提供了一个用于切换全屏的方法 `toggle_fullscreen`[^4]。 #### 方法二:隐藏滚动条并优化用户体验 如果希望进一步提升体验,还可以结合隐藏滚动条的操作。对于 `QWebEngineView`,虽然其 API 不同于旧版的 `QWebView`,但仍可通过 CSS 控制页面内的滚动行为。 ```python def disable_scrollbars(self): self.browser.page().runJavaScript(""" document.documentElement.style.overflow = 'hidden'; document.body.scroll = "no"; """) ``` 此函数利用 JavaScript 执行命令,在加载的内容中禁用了溢出部分的滚动效果[^1]。 #### 自定义标题栏支持 为了完全模拟浏览器的行为,可能还需要移除默认的窗口装饰(如边框、按钮等),并通过自绘的方式添加自己的控件。这一步骤通常涉及重写 `paintEvent` 并处理鼠标拖拽逻辑[^3]。 --- ### 总结 以上两种方案分别解决了全屏展示的需求和技术细节上的改进措施。第一种专注于基本功能实现;第二种则考虑到了更细致的交互设计需求。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值