बदलने के लिए कैसे .qml विस्तार करने के लिए एक .यूआई का उपयोग करने के लिए इसे में pyqt5 आवेदन

0

सवाल

मैं बनाने के लिए डिजाइन अपने अनुप्रयोग के साथ क्यूटी डिजाइनर और फिर बदलने के लिए हर विंडो के लिए एक अजगर का उपयोग कर फ़ाइल कमांड pyuic5 उदाहरण है । यूआई -o example.py में प्राप्त करने में सक्षम एक Ui_Form वर्ग और यह अपने कार्यक्रम में. इसलिए हर बात काम कर रहा है, लेकिन अब हम बदल गया है, हमारे डिजाइन और हम एक qml फ़ाइलें. मेरा सवाल यह है कि कैसे साथ काम करने के लिए इस qml फ़ाइलों को बदलने के बिना अवधारणाओं के अनुप्रयोग. वहाँ है एक विधि की तरह pyuic5 (प्राप्त करने के लिए Ui_Form वर्ग) को बदलने के लिए qml और इसे उपयोग में pyqt5.

इस का एक उदाहरण है, पुराने अनुप्रयोग:

from main_screen import Ui_Form as Ui_main_screen
class MainScreen(QWidget, Ui_main_screen):
    teachButton = False
    manageButton = False
    utilitiesButton = False
    adminButton = False
    helpButton = False
    systemButton = False
    inspectionButton = False
    modelSelected = None
    def __init__(self):
        super(MainScreen, self).__init__()
        #QWidget.__init__(self)
        self.setupUi(self)
        self.trans = QTranslator(self)

        self.toLanguage()
        self.product()
        self.Menu() .....

के रूप में आप देख सकते हैं, मैं आयातित Ui_Form में MainScreen वर्ग. अब मैं करने के लिए चाहते हैं के साथ भी ऐसा ही qml फ़ाइल

import QtQuick 2.7
Item {
    width:904
    height:678
    Image {
        id: background
        source: "images/background.png"
        x: 0
        y: 1
        opacity: 1
    }
    Image {
        id: logo
        source: "images/logo.png"
        x: 691
        y: 34
        opacity: 1
    }
    Image {
        id: teach
        source: "images/teach.png"
        x: 717
        y: 154
        opacity: 1
    }
    Image {
        id: administration
        source: "images/administration.png"
        x: 711
        y: 410
        opacity: 0.49803921568627
    }
    Image {
        id: system
        source: "images/system.png"
        x: 708
        y: 468
        opacity: 0.49803921568627
    }
    Image {
        id: utilities
        source: "images/utilities.png"
        x: 711
        y: 353
        opacity: 0.49803921568627
    }
    Image {
        id: help
        source: "images/help.png"
        x: 712
        y: 524
        opacity: 0.49803921568627
    }
    Image {
        id: teachinf_wizard
        source: "images/teachinf_wizard.png"
        x: 740
        y: 196
        opacity: 1
    }
    Image {
        id: inspection
        source: "images/inspection.png"
        x: 713
        y: 295
        opacity: 0.49803921568627
    }
    Image {
        id: manage
        source: "images/manage.png"
        x: 714
        y: 239
        opacity: 1
    }
}

तो कैसे कुछ पाने के लिए की तरह Ui_Form वर्ग के साथ qml फ़ाइल

pyqt5 python qml
2021-11-12 10:19:15
1

सबसे अच्छा जवाब

2

लघु जवाब:

कोई यह नहीं किया जा सकता ।

लंबे जवाब:

के .यूआई सिर्फ निर्देशों का एक सेट पर कैसे qwidgets प्रदर्शित किया जाना चाहिए, दूसरे हाथ पर, qml एक प्रोग्रामिंग भाषा है के बाद से, वे संकेत मिलता है कि कैसे वस्तुओं बातचीत.

निकटतम बात करने के लिए है क्या आप चाहते हैं करने के लिए सक्षम होना करने के लिए अपनी वेबसाइट पर qml में एक QWidget का उपयोग कर, उदाहरण के लिए QQuickWidget:

import os
import sys
import os
from pathlib import Path


from PyQt5.QtCore import QUrl
from PyQt5.QtWidgets import QApplication
from PyQt5.QtQuickWidgets import QQuickWidget


CURRENT_DIRECTORY = Path(__file__).resolve().parent


def main():

    app = QApplication(sys.argv)

    widget = QQuickWidget(resizeMode=QQuickWidget.ResizeMode.SizeRootObjectToView)
    filename = os.fspath(CURRENT_DIRECTORY / "main.qml")
    url = QUrl.fromLocalFile(filename)
    widget.setSource(url)
    widget.show()

    sys.exit(app.exec_())


if __name__ == "__main__":
    main()
2021-11-12 23:10:07

अन्य भाषाओं में

यह पृष्ठ अन्य भाषाओं में है

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................

इस श्रेणी में लोकप्रिय

लोकप्रिय सवाल इस श्रेणी में