【问题标题】:PySide QTextEdit html table widthPySide QTextEdit html表格宽度
【发布时间】:2012-12-18 21:07:47
【问题描述】:

我正在尝试通过内联样式表设置我的 html 表格的宽度以获取我的 QTextEdit 的总宽度,但表格的宽度不会改变。我尝试以百分比(%) 甚至像素(px) 的形式为其赋值,但没有任何变化。你能看看吗?

#!/usr/bin/env python2

import sys
from PySide import QtGui, QtCore

class MainWid(QtGui.QWidget):
    htmlTable = '''<table border="1" style="width:100%"> <!-- XXX Nothing happens!! -->
        <tr><th colspan="2">HEADER</th></tr>
        <tr><td>name</td><td>value</td></tr>
        <tr><td>name</td><td>value</td></tr>
    </table>'''
    def __init__(self, parent=None):
        super(MainWid, self).__init__(parent)
        self.initgui()

    def initgui(self):
        lay = QtGui.QVBoxLayout()
        txt = QtGui.QTextEdit(self)

        lay.addWidget(txt)
        txt.setReadOnly(True)
        txt.setHtml(self.htmlTable)

        self.setLayout(lay)
        self.show()

def main():
    app = QtGui.QApplication(sys.argv)
    wid = MainWid()
    sys.exit(app.exec_())

if __name__=="__main__":
    main()

提前感谢大家。

【问题讨论】:

    标签: html qt pyqt pyside qtextedit


    【解决方案1】:

    看看这是不是你要找的东西:

    htmlTable = ''' <table border="1" width="100%">
                        <tr><th colspan="2">HEADER</th></tr>
                        <tr><td>name</td><td>value</td></tr>
                        <tr><td>name</td><td>value</td></tr>
                    </table>
                '''
    

    【讨论】:

    • 不,不是... (%%) 是偶然留在那里的,因为我使用了字符串格式,但这不是导致不良行为的原因。+1 用于发现错字。 . 我会编辑的。
    • 如果用width="100%" 替换style="width:100%" 不能解决您的问题,您能否找到一种方法来显示您希望表格显示的准确程度?见here
    猜你喜欢
    • 2011-08-20
    • 2014-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多