Qt/pyQt/PySide -创建文档模板打印
Qt/pyQt/PySide - Create document template for printing
大家好
我是新来的,这是我的第一个小项目,所以要理解。我需要创建一个将被用作模板的文件布局,并在最后将填满从数据库和打印收集的数据。还没有创建db所以,现在,我建立了本地变量来理解这个问题。我要每个都小一点数据块要放在非常具体的位置。我检查了QTextDocument文档,它看起来像很好的工作工具,但我不知道如何为它创建布局。
请指教。
编辑:网上关于这个主题的信息不多。虽然我能找到这个线程
这正是我想要的。然而,有许多变量我希望放入html,因此"。"格式"选项似乎有点让人不知所措。谁知道更好的解决方案?
Qt中有许多启用HTML的小部件,QTextDocument应该可以工作,QLabel也可以。在我的项目中,我使用了QtWebKit。QWebView,因为我需要表格,我认为其他小部件没有做他们(但我不太确定,检查文档,如果你需要这个)。
在我看来,……如果您使用命名参数,"格式"并不是压倒性的,对于我的目的来说已经足够好了。为参数值使用字典也可能很有帮助
示例代码:
from PyQt4 import QtGui
from PyQt4 import QtWebKit
class DisplayHTML(QtWebKit.QWebView):
def __init__(self, html, parent=None):
super().__init__(parent)
self.setHtml(html)
if __name__ == '__main__':
import sys
app = QtGui.QApplication(sys.argv)
html_template = "<html><p>Hello, {first}, how {second} you {third}?</p></html>"
values_dict = {
'first': 'Joe',
'second': 'are',
'third': 'today',
}
html_ready_to_render = html_template.format(**values_dict)
window = DisplayHTML(html_ready_to_render)
window.show()
sys.exit(app.exec_())
编辑:你不需要创建一个新的类做这样简单的事情,只需使用QWebView()和调用setHtml()对它…
from PyQt4 import QtGui
from PyQt4 import QtWebKit
class DisplayHTML(QtWebKit.QWebView):
def __init__(self, html, parent=None):
super().__init__(parent)
self.setHtml(html)
if __name__ == '__main__':
import sys
app = QtGui.QApplication(sys.argv)
html_template = "<html><p>Hello, {first}, how {second} you {third}?</p></html>"
values_dict = {
'first': 'Joe',
'second': 'are',
'third': 'today',
}
html_ready_to_render = html_template.format(**values_dict)
window = DisplayHTML(html_ready_to_render)
window.show()
sys.exit(app.exec_())
相关文章:
- 正在查找文档以获得PS4平台的C++中的设备信息
- 如何在文档文件夹中创建目录
- 当Microsoft文档仅包含 C# 示例时,如何查找 C++ 包含文件名
- 通过构造函数创建一些值并尝试添加到文档中使用 rapidjson 不起作用
- 关于类的 Python 文档 - 对C++的引用不正确
- C++/autoconf 等效于文档库要求.txt的要求是什么?
- mbed:使用 USB 文档库编译会导致错误
- C++ VISUAL STUDIO:GLFWwindow没有初始化,即使它是在文档中编写的并且以前工作过
- 使用 yaml-cpp 更新 YAML 文档的节点和值
- 在加载 MSHTML 文档之前从 MSHTML 文档中删除无效的 URL
- 如何在C++中表示JSON文档的递归对象结构?
- 如何查找 Redshift Maya API 文档?
- 如何使用值模板编写文档测试用例?
- 如何使用 Gradle DSL(领域特定语言)上的文档?
- ncurses 找不到任何关于cchar_t的文档
- 提取狮身人面像文档中的C++代码片段
- xml_node<wchar_t> 我正在使用快速 xml 将 XML 文档打印到文件
- 什么相当于 C/C++ 中的 C# 打印文档?
- Linux打印文档到标准输出或文件
- Qt/pyQt/PySide -创建文档模板打印