Designer ile tasarladığım proje pycharmda çalışmıyor

designer ile tasarladığım proje pycharmda hiçbir hata vermiyor fakat run a bastıktan sonra açılmıyor nerde hata yapıyorum acaba

Hangi designer?

Konu hakkinda daha fazla bilgi vermeniz lazim, yoksa tahmin yurutmekten baska bir sey yapamayiz.

Qt designer ile tasarladım detay eksikliği için kusura bakma

Qt Designer ile uzantısı .ui olan tasarım dosyası oluşturuyorsunuz.Bunu PyCharm’ın okuyabileceği .py gibi uzantılara çevirmeniz lazımm

1 Beğeni

işte uzantıyı değiştiriyorum ve pycharmda da kodlar geliyor fakat run a bastığım zaman herhangi bir pencere veya arayüz açılması olmuyor

Uzantıyı nasıl değiştiriyorsunuz? Farklı kaydet ile mi?

uzantıyı powershell ile(python -m PyQt5.uic.pyuic -x dosyaadi.ui -o dosyaadi.py) yazarak değişiyorum

Designer ile üretilen kodlar tek başına kullanılmıyor. QtDesigner ile alakalı bir tutorial’ı takip edin.

Büyük ihtimalle şunu atlıyorsunuz:

if __name__ == "__main__":

    app = QtWidgets.QApplication(sys.argv)
    DovizProgrami = QtWidgets.QWidget()
    ui = Ui_DovizProgrami()
    ui.setupUi(DovizProgrami)
    DovizProgrami.show()
    sys.exit(app.exec_())

bu kodları atlıyorsunsuz.

o da var herşey tam görünüyor fakat altta görüldüğü gibi anında program çalıştı diyor fakat bir şey gelmiyor

Dönüştürülen ui dosyasını (.py dosyasını) ve bu dosyayı kullanan diğer .py dosyasının içeriğini atın.

from PyQt5 import QtCore, QtGui, QtWidgets

class Ui_Form(object):
def setupUi(self, Form):
Form.setObjectName(“Form”)
Form.resize(400, 300)
self.car = QtWidgets.QPushButton(Form)
self.car.setGeometry(QtCore.QRect(50, 160, 75, 23))
self.car.setObjectName(“car”)
self.subway = QtWidgets.QPushButton(Form)
self.subway.setGeometry(QtCore.QRect(170, 160, 75, 23))
self.subway.setObjectName(“subway”)
self.bus = QtWidgets.QPushButton(Form)
self.bus.setGeometry(QtCore.QRect(290, 160, 75, 23))
self.bus.setObjectName(“bus”)
self.label = QtWidgets.QLabel(Form)
self.label.setGeometry(QtCore.QRect(40, 30, 300, 100))
self.label.setStyleSheet(“image: url(:/image/classic_car.png);”)
self.label.setText("")
self.label.setObjectName(“label”)

    self.retranslateUi(Form)
    QtCore.QMetaObject.connectSlotsByName(Form)


def retranslateUi(self, Form):
    _translate = QtCore.QCoreApplication.translate
    Form.setWindowTitle(_translate("Form", "Form"))
    self.car.setText(_translate("Form", "car"))
    self.subway.setText(_translate("Form", "subway"))
    self.bus.setText(_translate("Form", "bus"))

import test_rc

if name == “main”:
import sys
app = QtWidgets.QApplication(sys.argv)
Form = QtWidgets.QWidget()
ui = Ui_Form()
ui.setupUi(Form)
Form.show()
sys.exit(app.exec_())

py uzantılı dosyanın içindeki bu bunu sadece deneme amaçlı 3 tane buton koymuştum ama o da açılmıyor işte

Kodlarda hata yok, çalışıyor.

Terminale dikkat edin, main.py dosyasını koşturuyorsunuz. Sizin ilgilendiğiniz dosya, denemeler.py

PyCharm dışında, sıradan bir dosya gibi denemeler.py'ı çift tıklayıp çalıştırın.
Not: PyQt5 sadece sanal ortam üzerinde kurulduysa ilgili sanal ortamı aktive edip o dizine giderek dosyayı çalıştırın.

1 Beğeni

abi bunu yapmak zorunlu değil bu sadece dosya adı main se çalıştırmakta ki bence gereksiz kullanıcıyı kısıtlıyor

Bunu yapmak zorunlu değil ama daha performanslı ve verimli kod yazma alanı oluşturuyor.

performansı nasıl etkilerki

Bunu hiç yapmamışsa diye yazdım. İmport da etmemişse çalışmaz ki

Amaç bu zaten.

Etkilemez.

Dosyaları yeri geldiğinde okumak,hepsini bi anda okumaktan daha performanslı olmaz mı?

Bunun if __name__ == "__main__" ile ne alakası var anlamadım.