当前位置: 首页 > news >正文

PyQt5 自定义富文本编辑器

介绍

一款使用PyQt5和网页端框架wangEditor集成的富文本编辑器

代码片段

PyQt5客户端

  • 与网页端建立连接
    def create_connect(self):self.web_view = QWebEngineView()self.bridge = JSBridge(self.web_view.page())self.web_view.load(QUrl.fromLocalFile(self.editor_path))web_channel = QWebChannel(self.web_view.page())web_channel.registerObject("bridge", self.bridge)self.web_view.page().setWebChannel(web_channel)
    
  • 执行网页端代码
    def run_js(self, func: str, *args):"""执行js函数:param func: 函数名:param args: 函数参数:return:"""while not self.__is_load_finished:QApplication.processEvents()self.web_page.runJavaScript(f"{func}({self.trans_args(*args)})")
    
  • 执行网页端代码并获取返回值
    def get_data_from_js(self, func: str, *args):"""执行js并且获取返回值:param func: 函数名:param args: 函数参数:return:"""param = ["#NONE#"]def set_param(data):param[0] = str(data).strip()self.web_page.runJavaScript(f"{func}({self.trans_args(*args)})", set_param)while param[0] == "#NONE#" or not self.__is_load_finished:QApplication.processEvents()return param[0]
    

web端

  • 与PyQt客户端建立连接
    new QWebChannel(qt.webChannelTransport, function (channel) {window.bridge = channel.objects.bridge
    })
    

效果图

在这里插入图片描述

WangEditor

WangEditor

源码下载

PyRichEditor


如果该文章对您有帮助请给博主点个赞哈😄

相关文章:

PyQt5 自定义富文本编辑器

介绍 一款使用PyQt5和网页端框架wangEditor集成的富文本编辑器 代码片段 PyQt5客户端 与网页端建立连接def create_connect(self):self.web_view QWebEngineView()self.bridge JSBridge(self.web_view.page())self.web_view.load(QUrl.fromLocalFile(self.editor_path))w…...

【高可用系统架构设计】SLA服务可用性4个9是什么意思?如何保证服务的高可用性 HA(High Availability)?...

如何保证服务的高可用性 HA(High Availability)?高可用HA(High Availability)是分布式系统架构设计中必须考虑的因素之一,它通常是指,通过设计减少系统不能提供服务的时间。方法论上,高可用是通…...

微服务架构设计模式-(14)面向生产环境

生产环境要求 应用安全 数据权限 服务可配置性 不同环境的配置不一样,不能写死代码,所以要配置 可观测性 需要日志系统 应用安全 四个方面 身份验证 验证主体的身份解决方案 单体 cookie 微服务中 API Gateway 访问令牌 不透明令牌透明令牌&#xff…...

HTML5新增用法

新增语义化标签 并无特殊含义&#xff0c;是语义&#xff01;语义&#xff01;语义&#xff01; <header> 头部区域 <nav> 导航区域 <main> 主体区域 <article> 内部标签 <section> 块级标签 <aside> 侧边栏标签 <footer> 尾部…...

富足金字塔:人的努力是为了扩大选择的范围

人的努力是为了扩大选择的范围&#xff0c;这是熵减的另一种表述。富足金字塔代表着人生的三重境界。第一层是温饱。人需要食物、水、住所。第二层是品质。能源、ICT、教育带来更有品质的生活&#xff0c;如智能门锁、智能马桶、扫地机、洗碗机、洗衣烘衣机。第三层是梦想。包括…...

C++类基础(十七)

类的继承——补充知识 ● public 与 private 继承&#xff08;C Public, Protected and Private Inheritance&#xff09; 改变了类所继承的成员的访问权限 //公有继承 struct Base { public:int x; private:int y; protected:int z; }; struct Derive : public Base //公有继承…...

LeetCode刷题复盘笔记—一文搞懂贪心算法之56. 合并区间(贪心算法系列第十四篇)

今日主要总结一下可以使用贪心算法解决的一道题目&#xff0c;56. 合并区间 题目&#xff1a;56. 合并区间 Leetcode题目地址 题目描述&#xff1a; 以数组 intervals 表示若干个区间的集合&#xff0c;其中单个区间为 intervals[i] [starti, endi] 。请你合并所有重叠的区间…...

Andriod入门级开发

这学期有个课设&#xff0c;我们组我负责一个手机APP的开发&#xff0c;虽然刚开始说要实现什么智能导航&#xff0c;类似高德地图那种&#xff0c;但最后阉割的只剩一个Socket通信了&#xff0c;因为之前没有接触过&#xff08;可能之后也不会再接触&#xff09;&#xff0c;记…...

DCL 数据控制语言

1、简介 DCL英文全称是Data Control Language(数据控制语言)&#xff0c;用来管理数据库用户、控制数据库的访问权限。 2、管理用户 2.1 查询用户 select * from mysql.user;查询的结果如下: 其中 Host代表当前用户访问的主机, 如果为localhost, 仅代表只能够在当前本机访问…...

全网超详细的下载与安装VMware虚拟机以及为什么要安装VMware虚拟机

文章目录1. 文章引言2. 下载VMware3. 安装VMware1. 文章引言 我们使用最多的系统是windows系统&#xff0c;因为&#xff0c;国内电脑厂商的操作系统(os)基本是windows系统&#xff0c;比如华为、联想、华硕等电脑。 但线上的服务器大多是Linux系统&#xff0c;而我们经常使用…...

Python获取zabbix问题触发器

背景&#xff1a;阿里云的ECS服务器因为阿里云升级插件&#xff0c;导致安全防护程序重启&#xff0c;产生不同的端口。导致低自动发现注册的端口 大量报警。 解决&#xff1a;杀掉关于因为非业务 变更的端口检测的触发器。 相关文档&#xff1a; Zabbix监控之主机端口监控自…...

原型链污染

目录 前置知识 原型对象 prototype和__proto__的区别 原型链概念 原型链的继承 原型 链污染 原型链污染原理 javascript中可能会存在原型链污染的危险函数 原型链污染的实际应用 JavaScript中可以触发弹窗的函数 前置知识 原型对象 在JavaScript中&#xff0c;每个函…...

ClickHouse详解

一、概念ClickHouse是一个用于联机分析(OLAP)的列式数据库管理系统(DBMS)。OLAP场景的关键特征绝大多数是读请求数据以相当大的批次(> 1000行)更新&#xff0c;而不是单行更新;或者根本没有更新。已添加到数据库的数据不能修改。对于读取&#xff0c;从数据库中提取相当多的…...

02_Docker 安装

02_Docker 安装 文章目录02_Docker 安装2.1 安装 Docker 的先决条件2.2 在 Ubuntu 和 Debain 中安装 Docker2.2.1 检查前提条件1. 内核2.检查 Device Manager2.2 安装 DockerDocker 支持非常多的Linux平台&#xff0c;包括Ubuntu和RHEL&#xff0c;除此之外&#xff0c;Docker还…...

K8S集群将Docker切换到Containerd

文章目录1. 开启节点维护1.1 将节点设置成不可调度1.2 驱逐节点上的 Pod1.3 停止相关服务2. 升级到 containerd2.1 安装 containerd2.2 调整 containerd 配置2.3 修改 kubelet 启动配置参数3. 重启节点服务4. 验证升级后的节点5. 容器管理工具5.1 容器管理命令行工具对比5.2 cr…...

Kubernetes03:kubernetes 功能和架构

2.1 概述 Kubernetes 是一个轻便的和可扩展的开源平台&#xff0c;用于管理容器化应用和服务。通过 Kubernetes 能够进行应用的自动化部署和扩缩容。在 Kubernetes 中&#xff0c;会将组成应用的容 器组合成一个逻辑单元以更易管理和发现。Kubernetes 积累了作为 Google 生产环…...

LabVIEW中CPU和内存使用情况在NI分布式系统管理器中不可见

LabVIEW中CPU和内存使用情况在NI分布式系统管理器中不可见想使用NI分布式系统管理器监测网络连接实时控制器的CPU和内存使用情况。从左侧窗口的树中选择了感兴趣的实时目标&#xff0c;然后通过选择视图自动视图来确保启用自动查看。希望看到CPU/内存选项卡&#xff0c;但它有显…...

buu [NPUCTF2020]Classical Cipher 1

题目描述&#xff1a; 题目分析&#xff1a; 首先输入密码 {gsv_pvb_rh_zgyzhs} 后&#xff0c;得到&#xff1a;可以得知密码是错误的&#xff0c;再看看密码 {gsv_pvb_rh_zgyzhs} &#xff0c;排列无序&#xff0c;那么尝试用凯撒与栅栏解密&#xff0c;发现还是解不出&…...

分享96个HTML体育竞技模板,总有一款适合您

分享96个HTML体育竞技模板&#xff0c;总有一款适合您 96个HTML体育竞技模板下载链接&#xff1a;https://pan.baidu.com/s/1k2vJUlbd2Boduuqqa0EWMA?pwdj8ji 提取码&#xff1a;j8ji Python采集代码下载链接&#xff1a;采集代码.zip - 蓝奏云 北京奥运火炬PSD模板 奥运…...

Python pandas「原有或者新建」Excel中「追加新或者新建」sheet

1.pandas原有Excel中追加新sheet 使用Pandas库&#xff0c;我们可以轻松将数据追加到现有的Excel工作簿中的新工作表中。以下是追加新工作表的简单步骤&#xff1a; 读取现有的Excel文件 使用Pandas库中的read_excel()函数读取现有的Excel文件。指定Excel文件的路径和文件名&a…...

ElevenLabs阿拉伯文语音在Qur’anic Arabic场景下韵律崩塌?20年古兰经语音工程团队验证的4层音节边界校准协议

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;ElevenLabs阿拉伯文语音在Qur’anic Arabic场景下的韵律失效现象全景扫描 Qur’anic Arabic&#xff08;古兰经阿拉伯语&#xff09;具有高度规范化的诵读规则&#xff08;Tajwīd&#xff09;&#x…...

基于ESP32与WLED打造智能可编程灯饰:从硬件连接到软件配置全攻略

1. 项目概述&#xff1a;打造你的专属智能光影秀又到年底了&#xff0c;看着满大街千篇一律的彩灯装饰&#xff0c;是不是觉得有点审美疲劳&#xff1f;想不想自己动手&#xff0c;做一套独一无二、能通过手机随心控制颜色和动画的智能灯饰&#xff1f;今天分享的这个项目&…...

蓝牙Mesh、Beacon都靠它:深入浅出图解蓝牙广播帧的8种类型与应用场景

蓝牙广播帧全解析&#xff1a;从Beacon到Mesh的8种通信范式 当你在商场收到精准的优惠推送&#xff0c;当智能灯泡自动组网完成&#xff0c;当无线耳机实现多人共享音频——这些场景背后都藏着一个低调的通信英雄&#xff1a;蓝牙广播帧。不同于需要"握手"的连接通信…...

大语言模型记忆增强框架:LightMem原理、实现与工程实践

1. 项目概述&#xff1a;当大模型遇上“记忆”瓶颈最近在折腾大语言模型&#xff08;LLM&#xff09;应用开发的朋友&#xff0c;估计都遇到过同一个头疼的问题&#xff1a;模型记不住事儿。你精心设计了一个对话系统&#xff0c;希望它能记住用户的历史偏好&#xff0c;比如“…...

别再傻傻分不清了!全桥、半桥、推挽电源拓扑,到底哪个更适合你的项目?

全桥、半桥与推挽拓扑实战选型指南&#xff1a;从理论到工程落地的关键抉择 在电力电子设计领域&#xff0c;拓扑结构的选择往往决定着整个项目的成败。当我第一次面对500W工业电源设计需求时&#xff0c;曾天真地认为"功率越大拓扑越高级"——这个错误认知让我付出了…...

ElevenLabs俄文语音合成私有化部署终极方案(含Docker镜像+俄语ASR对齐校验工具链)

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;ElevenLabs俄文语音合成私有化部署的背景与价值 随着全球本地化需求激增&#xff0c;俄语市场对高质量、低延迟、高隐私保障的语音合成&#xff08;TTS&#xff09;服务提出迫切要求。ElevenLabs 以其卓…...

Windows热键侦探:快速定位热键冲突的终极解决方案

Windows热键侦探&#xff1a;快速定位热键冲突的终极解决方案 【免费下载链接】hotkey-detective A small program for investigating stolen key combinations under Windows 7 and later. 项目地址: https://gitcode.com/gh_mirrors/ho/hotkey-detective 你是否曾经遇…...

告别硬编码:模板引擎的加载逻辑与层叠继承艺术

更多内容请见: 《Python Web项目集锦》 - 专栏介绍和目录 文章目录 前言:被低估的视图半壁江山 第一章:破除迷信——Django 模板的设计哲学 1.1 限制的威力:为什么没有乘法器和复杂表达式? 1.2 两种角色的对立统一 第二章:寻宝游戏——模板加载器的底层引擎 2.1 TEMPLATE…...

树莓派Zero无音频接口?PWM+RC滤波实现模拟音频输出全攻略

1. 项目概述与核心思路树莓派Zero以其极致的性价比和紧凑的尺寸&#xff0c;在创客和嵌入式开发者中备受欢迎。然而&#xff0c;为了将成本和体积压缩到极致&#xff0c;树莓派基金会做出了一个“艰难的决定”&#xff1a;移除了标准型号上常见的3.5mm音频接口&#xff0c;也没…...

26-cv-2777、26-cv-2964、26-cv-3022、26-cv-3949、26-cv-4062、26-cv-5488 Winnie Rosaline Kan 版权画维权!

案号&#xff1a;26-cv-2777、26-cv-2964、26-cv-3022、26-cv-3949、26-cv-4062、26-cv-5488原告品牌&#xff1a;Winnie Rosaline Kan 版权画品牌方&#xff1a;Casetagram Limited起诉地&#xff1a;美国伊利诺伊州代理律所&#xff1a;Keith起诉时间&#xff1a;2026年03月1…...