首页 > 编程语言 >Python使用PyCharm创建一个简单的Qt Quick应用程序-hello_world_quick.py(读取qml文件方式)

Python使用PyCharm创建一个简单的Qt Quick应用程序-hello_world_quick.py(读取qml文件方式)

时间:2024-08-11 09:16:28浏览次数:6  
标签:__ 文件 Qt text py qml file import world

"""Create a Simple Quick Application"""
import sys
from pathlib import Path

from PySide6.QtGui import QGuiApplication
from PySide6.QtQml import QQmlApplicationEngine


# 打开文件,读取文件,并返回文件内容
def read_file(file_path):
    """
    :param file_path:文件全路径
    功能:打开文件,读取文件,并返回文件内容。
    """
    assert file_path.exists(), f'文件<{file_path}>必须存在才是!!!'
    with open(file_path, 'r', encoding='utf-8') as f:
        return f.read()


if __name__ == "__main__":
    app = QGuiApplication(sys.argv)
    engine = QQmlApplicationEngine()
    QML = read_file(Path(__file__).with_suffix('.qml'))  # 读取.qml文件
    engine.loadData(QML.encode('utf-8'))
    if not engine.rootObjects():
        sys.exit(-1)
    exit_code = app.exec()
    del engine
    sys.exit(exit_code)

hello_world_quick.qml文件内容:

import QtQuick
import QtQuick.Controls
import QtQuick.Layouts

Window {
width: 300
height: 200
visible: true
title: "Hello World"

readonly property list<string> texts: ["Hallo Welt", "Hei maailma",
"Hola Mundo", "Привет мир", "您好,世界!"]

function setText() {
var i = Math.round(Math.random() * 3)
text.text = texts[i]
}

ColumnLayout {
anchors.fill: parent

Text {
id: text
text: "Hello World"
Layout.alignment: Qt.AlignHCenter
}
Button {
text: "Click me"
Layout.alignment: Qt.AlignHCenter
onClicked: setText()
}
}
}

标签:__,文件,Qt,text,py,qml,file,import,world
From: https://www.cnblogs.com/zdt168/p/18353088

相关文章

  • Python使用PyCharm创建一个简单的Qt Widgets应用程序-hello_world.py
    """CreateaSimpleQtWidgetsApplication"""importrandomimportsysfromPySide6importQtCore,QtWidgets#MainClassclassMyWidget(QtWidgets.QWidget):def__init__(self):super().__init__()self......
  • Python使用PyCharm创建一个简单的Qt Quick应用程序-hello_world_quick.py
    """CreateaSimpleQuickApplication"""importsysfromPySide6.QtGuiimportQGuiApplicationfromPySide6.QtQmlimportQQmlApplicationEngineQML="""importQtQuickimportQtQuick.ControlsimportQtQuick.Lay......
  • Python数据结构:列表详解(创建、访问、修改、列表方法)①
    @[toc]Python中的列表是一个非常强大的数据结构,它允许我们存储、访问和操作一系列的数据。列表可以包含任何类型的对象,包括数字、字符串、甚至其他列表。本文将详细介绍Python列表的创建、访问、修改以及列表方法,并附上一个综合的例子,全面展示列表在实际编程中的应用。一......
  • python由tif影像绘制png图片并制作动图
    笔者最近需要下载一个区域的长时间序列影像,然后将其制作成动图展示其动态变化过程。这其中涉及到两个问题,一是将tif数据绘制成PNG或jpg等格式图片,二是由图片绘制动图GIF。一、由TIF绘制PNG 这里需要用到matplotlib和GDAL两个库来将tif格式图像绘制为PNG图片,如果没有相关包......
  • 多种优化算法优化LSTM——【包括:粒子群、蝙蝠、正余旋、多元宇宙、正余弦、JAYA、哈里
     ......
  • go Hello World
    安装参考Windows上安装Go环境并配置环境变量(超详细教程)安装过程在https://golang.google.cn/dl/下载对应的安装包添加环境变量GOROOT:go跟目录,并将bin目录添加到PATH执行如下命令#开启mod模式(项目管理需要用到)goenv-wGO111MODULE=on#重新设置成七牛镜像源(推......
  • python 提取日志错误请求批量重新请求
    因为有服务器线上偶发异常,所以需要获取Nginx访问日志重新请求补全数据,这时会借助python获取错误请求的URL,然后重新请求。具体如下:importtimeimportrequestsfromurllib.parseimporturljoin#定义一个集合用于存储已处理的URL,避免重复处理processed_urls=set()with......
  • 107. 项目57:简易节日倒计时——《跟老吕学Python·新手》
    107.项目57:简易节日倒计时107.1目标开发一个简易节日倒计时程序,用户可以选择一个节日,程序将计算并显示距离该节日的天数。107.2功能用户选择一个节日。程序计算从当前日期到节日的天数。程序显示倒计时结果。107.3设计用户选择节日:用户从预设的节日列表中选择一个......
  • pydantic实现LLM ReAct
    在今天的AI项目中,大模型的集成几乎成为了一种常态,但如何在保证输出的可控性和解释性的同时利用这些模型执行各种下游任务,一直是一个技术挑战。本文将介绍一个名为ReAct的系统,该系统通过结合大规模语言模型的输出与Python开发紧密合作,提供了一种新颖的解决方案。代码开源在G......
  • pytorch深度学习基础 4 (马变斑马)
    今天我们来介绍一个神奇的网络,生成对抗网络GAN,这个模型纯属当做娱乐,供大家消遣娱乐,在这里我只展示一下GAN模型有趣的一个小功能,先来给大家介绍一下GAN模型吧。GAN的基本原理GAN(GenerativeAdversarialNetworks,生成对抗网络)是一种深度学习模型,由两个主要的部分组成:生成器和......