如何删除QTabWidget标签内的填充?

如何解决如何删除QTabWidget标签内的填充?

从图像中可以看到,QTabWidget内的文本编辑器周围有一个边框。

我这样设置样式表:

tab.setStyleSheet("QTabWidget::pane { margin: 0px 0px 0px 0px; padding: 0px; border: 1px solid black; } QTabBar::tab { margin: 0px 0px 0px 0px; padding: 0px; border: 1px solid black; } QTabBar::tab:selected { background-color: #349117; }")

如果我将margin设置为负,这会有所帮助,但是事情看起来有点不合时宜,而且我也不想硬编码可能仅在我的系统上起作用而对其他系统不起作用的值。

代码如下:

import os,sys
from pyside2 import QtGui,QtCore,QtWidgets,QtWebEngineWidgets,QtWebChannel


# monaco editor index html file
file = "./index.html"

tab = QtWidgets.QTabWidget()
bgcolor = tab.palette().color(QtGui.QPalette.Background)

editor = QtWebEngineWidgets.QWebEngineView()
editor.load(QtCore.QUrl.fromLocalFile(file))
tab.setStyleSheet("QTabWidget::pane { margin: 0px 0px 0px 0px; padding: 0px; border: 1px solid black; } QTabBar::tab { margin: 0px 0px 0px 0px; padding: 0px; border: 1px solid black; } QTabBar::tab:selected { background-color: #349117; }")

tab.addTab(editor,"python1")
tab.show()

边框似乎来自显示的HTML页面。 这是HTML代码

<!DOCTYPE html>
<html>
<head>
    <Meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <Meta http-equiv="Content-Type" content="text/html;charset=utf-8" >
</head>
<body>

<div id="container" style="min-height: calc(100vh - 40px); margin: 0; padding: 0; Box-sizing: border-Box; border: 0px"></div>

<script src="monaco-editor/min/vs/loader.js"></script>
<script>
    require.config({ paths: { 'vs': 'monaco-editor/min/vs' }});
    require(['vs/editor/editor.main'],function() {
        var editor = monaco.editor.create(document.getElementById('container'),{
            value: [
                'function x() {','\tconsole.log("Hello World!");','}'
            ].join('\n'),language: 'python',fontFamily:"Verdana",fontSize: "20px",lineNumbers: "on",roundedSelection: false,scrollBeyondLastLine: true,readOnly: false,formatOnPaste: true,insertSpaces: true,automaticLayout: true,theme: "vs-dark"
        });
    });
</script>
</body>
</html>

enter image description here

解决方法

该填充是用HTML生成的,可以使用CSS删除:

<!DOCTYPE html>
<html>
<head>
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta http-equiv="Content-Type" content="text/html;charset=utf-8" >
</head>
<style >
    #container {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
    overflow: hidden;
}

</style>
<body>

<div id="container"></div>
<script src="monaco-editor/min/vs/loader.js"></script>
<script>
    require.config({ paths: { 'vs': 'monaco-editor/min/vs' }});
    require(['vs/editor/editor.main'],function() {
        var editor = monaco.editor.create(document.getElementById('container'),{
            value: [
                'function x() {','\tconsole.log("Hello world!");','}'
            ].join('\n'),language: 'python',fontFamily:"Verdana",fontSize: "20px",lineNumbers: "on",roundedSelection: false,scrollBeyondLastLine: true,readOnly: false,formatOnPaste: true,insertSpaces: true,automaticLayout: true,theme: "vs-dark"
        });
    });
</script>
</body>
</html>

enter image description here

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?
Java在半透明框架/面板/组件上重新绘画。
Java“ Class.forName()”和“ Class.forName()。newInstance()”之间有什么区别?
在此环境中不提供编译器。也许是在JRE而不是JDK上运行?
Java用相同的方法在一个类中实现两个接口。哪种接口方法被覆盖?
Java 什么是Runtime.getRuntime()。totalMemory()和freeMemory()?
java.library.path中的java.lang.UnsatisfiedLinkError否*****。dll
JavaFX“位置是必需的。” 即使在同一包装中
Java 导入两个具有相同名称的类。怎么处理?
Java 是否应该在HttpServletResponse.getOutputStream()/。getWriter()上调用.close()?
Java RegEx元字符(。)和普通点?