小编Ang*_*rez的帖子

使 QTextEdit 大小适合文本大小 pyqt5

我尝试让 QTextEdit 将其宽度值更改为在其中输入的文本的长度。

但问题是,当使用 resize 属性时,它不会做任何事情并且不会改变大小

我遵守列表中当前单词的长度,该值是我尝试作为属性 width() 发送到 QTextEdit 的值

得到这样的东西:

from PyQt5.QtWidgets import QMainWindow,QWidget,QVBoxLayout,QApplication,QTextEdit,QPushButton,QScrollArea

class Main(QMainWindow):
    def __init__(self):
        QMainWindow.__init__(self)

        self.lista = ["one","two","abcdefghijklmn","zxyw","xyxyxyxyx"]

        self.widget = QWidget(self)
        self.layout = QVBoxLayout(self.widget)

        self.area = QScrollArea(self)
        self.area.resize(400,300)
        self.area.setWidget(self.widget)
        self.area.setWidgetResizable(True)

        self.plain  =QTextEdit(self)
        self.plain.move(0,305)
        self.plain.resize(400,50)

        self.boton = QPushButton(self)
        self.boton.move(0,360)
        self.boton.setText("Press")

        self.boton.clicked.connect(self.Test)

    def Test(self):
        for i in self.lista:
            longitud = len(i)*6.3
            print(longitud)
            self.text = QTextEdit(self)
            self.text.document().setPlainText(i)
            self.text.setReadOnly(True)
            self.text.resize(longitud,10)
            self.layout.addWidget(self.text)

app = QApplication([])
m = Main()
m.show()
m.resize(600,400)
app.exec()
Run Code Online (Sandbox Code Playgroud)

实际上我需要的是创建用于填充 QScrollArea 的 QTextEdit 符合文本字符长度的大小

在此处输入图片说明

这是我得到的结果,但我需要的是 QTextEdit 的宽度()到行结束的地方

python pyqt qtextedit python-3.x pyqt5

2
推荐指数
1
解决办法
4272
查看次数

添加属性 QtCore.Qt.FramelessWindowHint 后如何从边缘调整窗口大小

晚安。我见过一些具有新无边界设计的程序,但您仍然可以使用调整大小。目前我知道要删除我们使用的 pyqt 程序的边框:QtCore.Qt.FramelessWindowHint

要更改窗口的大小,请使用 QSizeGrip。但是我们如何调整无边框窗口的大小呢?

这是我用来删除窗口边框的代码,但之后我还没有找到有关如何在 pyqt5 中执行此操作的信息。我希望你能帮我举例说明如何解决这个问题

from PyQt5.QtWidgets import QMainWindow,QApplication
from PyQt5 import  QtCore

class Main(QMainWindow):
    def __init__(self):
        QMainWindow.__init__(self)


        self.setWindowFlags(QtCore.Qt.FramelessWindowHint)


app = QApplication([])
m = Main()
m.show()
m.resize(800,600)
app.exec_()
Run Code Online (Sandbox Code Playgroud)

pyqt python-3.x pyqt5

2
推荐指数
1
解决办法
1406
查看次数

闭包:预期的 u32 发现类型参数

问题是我的泛型类型T只接受来自的参数u32,在这种情况下,我试图传递我存储在U.

有没有办法将泛型转换为特定类型?我能做些什么来解决问题?

#[derive(Debug)]
struct Cacher<T, U> where T: Fn(u32) -> u32 {
    calcular:T,
    valor:Option<U>,
}
impl<T, U> Cacher<T, U> where T: Fn(u32) -> u32 {
    fn nuevo(calcular:T, valor:U) -> Cacher<T, U> {
        Cacher{
            calcular,
            valor:None,
        }
    }
    fn valor(&mut self, arg:U) -> u32 {
        match self.valor {
            Some(v) => v,
            None => {
                let v = (self.calcular)(arg);
                self.valor = Some(arg);
                v
            }
        }
    }
}

fn generar(intensidad:u32){
    let mut resultado = Cacher::nuevo(|num| {
        println!("Trabajando"); …
Run Code Online (Sandbox Code Playgroud)

generics closures function traits rust

2
推荐指数
1
解决办法
59
查看次数

阴影效果在 QMainWindow 中不起作用

我有以下代码,其中我尝试在 QMainWindow 后面显示阴影效果,为此我使用QGraphicsDropShadowEffect\n 来获取阴影。

\n\n

但是运行代码时不会暂停任何内容。

\n\n

我已经尝试修改颜色和偏移量,但它也不起作用

\n\n

在此输入图像描述

\n\n

代码。吡啶

\n\n
from PyQt5.QtWidgets import QMainWindow,QApplication,QGraphicsDropShadowEffect\nfrom PyQt5 import QtCore,QtGui\nfrom PyQt5 import uic\n\n\nclass CInicial(QMainWindow):\n    def __init__(self):\n        QMainWindow.__init__(self)\n        uic.loadUi("ConfiguracionInicial.ui",self)\n\n        self.setWindowFlags(QtCore.Qt.FramelessWindowHint)\n        self.setAttribute(QtCore.Qt.WA_TranslucentBackground)\n\n        self.shadow = QGraphicsDropShadowEffect(self)\n        self.shadow.setBlurRadius(99)\n        self.shadow.setColor(QtGui.QColor(99,255,255))\n        self.shadow.setOffset(4)\n        self.setGraphicsEffect(self.shadow)\n\n\n\napp = QApplication([])\nci = CInicial()\nci.show()\napp.exec_()\n
Run Code Online (Sandbox Code Playgroud)\n\n

。用户界面

\n\n
<?xml version="1.0" encoding="UTF-8"?>\n<ui version="4.0">\n <class>MainWindow</class>\n <widget class="QMainWindow" name="MainWindow">\n  <property name="geometry">\n   <rect>\n    <x>0</x>\n    <y>0</y>\n    <width>683</width>\n    <height>482</height>\n   </rect>\n  </property>\n  <property name="windowTitle">\n   <string>MainWindow</string>\n  </property>\n  <property name="styleSheet">\n   <string notr="true">background-color:#5E5858;</string>\n  </property>\n  <widget class="QWidget" name="centralwidget">\n   <widget class="QFrame" name="fContenedor1">\n    <property name="geometry">\n     <rect>\n …
Run Code Online (Sandbox Code Playgroud)

python pyqt pyqt5

1
推荐指数
1
解决办法
2068
查看次数

标签 统计

pyqt ×3

pyqt5 ×3

python ×2

python-3.x ×2

closures ×1

function ×1

generics ×1

qtextedit ×1

rust ×1

traits ×1