Programm funktioniert nicht mehr
Verfasst: Freitag 5. Februar 2016, 21:40
				
				Guten Abend zusammen,
ich habe folgendes Problem.
Wenn ich den folgenden Code ausführe und auf den Play Button drücke, kommt von
Python eine Meldung das, das Programm nicht mehr Funktioniert. Ich bitte um Hilfe :/
			ich habe folgendes Problem.
Wenn ich den folgenden Code ausführe und auf den Play Button drücke, kommt von
Python eine Meldung das, das Programm nicht mehr Funktioniert. Ich bitte um Hilfe :/
Code: Alles auswählen
# -*- coding: utf-8 -*-
from PyQt5 import QtCore, QtGui, QtWidgets
import os, easygui, urllib.request, DataFile
class Ui_Form(object):
    def setupUi(self, Form):
        Form.setObjectName("Form")
        Form.resize(798, 500)
        self.gridLayout_2 = QtWidgets.QGridLayout(Form)
        self.gridLayout_2.setObjectName("gridLayout_2")
        self.gridLayout = QtWidgets.QGridLayout()
        self.gridLayout.setObjectName("gridLayout")
        self.play = QtWidgets.QPushButton(Form)
        self.play.setObjectName("play")
        self.gridLayout.addWidget(self.play, 1, 0, 1, 1)
        self.progressBar = QtWidgets.QProgressBar(Form)
        self.progressBar.setProperty("value", 24)
        self.progressBar.setAlignment(QtCore.Qt.AlignCenter)
        self.progressBar.setObjectName("progressBar")
        self.gridLayout.addWidget(self.progressBar, 1, 1, 1, 1)
        self.tabWidget = QtWidgets.QTabWidget(Form)
        self.tabWidget.setObjectName("tabWidget")
        self.tab = QtWidgets.QWidget()
        self.tab.setObjectName("tab")
        self.tabWidget.addTab(self.tab, "")
        self.tab_4 = QtWidgets.QWidget()
        self.tab_4.setObjectName("tab_4")
        self.tabWidget.addTab(self.tab_4, "")
        self.tab_3 = QtWidgets.QWidget()
        self.tab_3.setObjectName("tab_3")
        self.gridLayout_3 = QtWidgets.QGridLayout(self.tab_3)
        self.gridLayout_3.setObjectName("gridLayout_3")
        self.webView = QtWebKitWidgets.QWebView(self.tab_3)
        self.webView.setUrl(QtCore.QUrl("http://89.163.224.229/pma/"))
        self.webView.setObjectName("webView")
        self.gridLayout_3.addWidget(self.webView, 0, 0, 1, 1)
        self.tabWidget.addTab(self.tab_3, "")
        self.tab_2 = QtWidgets.QWidget()
        self.tab_2.setObjectName("tab_2")
        self.gridLayout_4 = QtWidgets.QGridLayout(self.tab_2)
        self.gridLayout_4.setObjectName("gridLayout_4")
        self.webView_2 = QtWebKitWidgets.QWebView(self.tab_2)
        self.webView_2.setUrl(QtCore.QUrl("http://mcupdate.tumblr.com/"))
        self.webView_2.setObjectName("webView_2")
        self.gridLayout_4.addWidget(self.webView_2, 0, 0, 1, 1)
        self.tabWidget.addTab(self.tab_2, "")
        self.tab_5 = QtWidgets.QWidget()
        self.tab_5.setObjectName("tab_5")
        self.groupBox = QtWidgets.QGroupBox(self.tab_5)
        self.groupBox.setGeometry(QtCore.QRect(10, 10, 251, 111))
        self.groupBox.setObjectName("groupBox")
        self.gridLayout_5 = QtWidgets.QGridLayout(self.groupBox)
        self.gridLayout_5.setObjectName("gridLayout_5")
        self.version = QtWidgets.QComboBox(self.groupBox)
        self.version.setObjectName("version")
        self.gridLayout_5.addWidget(self.version, 2, 0, 1, 1)
        self.launchervisible = QtWidgets.QCheckBox(self.groupBox)
        self.launchervisible.setObjectName("launchervisible")
        self.gridLayout_5.addWidget(self.launchervisible, 4, 0, 1, 1)
        self.groupBox_2 = QtWidgets.QGroupBox(self.tab_5)
        self.groupBox_2.setGeometry(QtCore.QRect(10, 130, 251, 101))
        self.groupBox_2.setObjectName("groupBox_2")
        self.offlinemodus = QtWidgets.QCheckBox(self.groupBox_2)
        self.offlinemodus.setGeometry(QtCore.QRect(10, 20, 141, 17))
        self.offlinemodus.setObjectName("offlinemodus")
        self.lineEdit = QtWidgets.QLineEdit(self.groupBox_2)
        self.lineEdit.setEnabled(False)
        self.lineEdit.setGeometry(QtCore.QRect(12, 50, 231, 20))
        self.lineEdit.setObjectName("lineEdit")
        self.tabWidget.addTab(self.tab_5, "")
        self.gridLayout.addWidget(self.tabWidget, 0, 0, 1, 2)
        self.gridLayout_2.addLayout(self.gridLayout, 0, 0, 1, 1)
        self.play.clicked.connect(self.Play)
        self.retranslateUi(Form)
        self.tabWidget.setCurrentIndex(4)
        self.offlinemodus.clicked['bool'].connect(self.lineEdit.setEnabled)
        QtCore.QMetaObject.connectSlotsByName(Form)
    def retranslateUi(self, Form):
        _translate = QtCore.QCoreApplication.translate
        Form.setWindowTitle(_translate("Form", "Control Panel"))
        self.play.setText(_translate("Form", "Start"))
        self.tabWidget.setTabText(self.tabWidget.indexOf(self.tab), _translate("Form", "Startseite"))
        self.tabWidget.setTabText(self.tabWidget.indexOf(self.tab_4), _translate("Form", "Platzhalter"))
        self.tabWidget.setTabText(self.tabWidget.indexOf(self.tab_3), _translate("Form", "PMA"))
        self.tabWidget.setTabText(self.tabWidget.indexOf(self.tab_2), _translate("Form", "Platzhalter2"))
        self.groupBox.setTitle(_translate("Form", "Minecraft"))
        self.tabWidget.setTabText(self.tabWidget.indexOf(self.tab_5), _translate("Form", "Einstellungen"))
    def Reporthook1(self, blocknum, blocksize, totalsize):
        versionIndex = self.version.currentIndex()
        currentVersion = versions[versionIndex].split("|")
        totalsize = currentVersion[3]
        print(totalsize)
    
    def Play(self, o):
        versionIndex = self.version.currentIndex()
        currentVersion = versions[versionIndex]
        urllib.request.urlretrieve(currentVersion[1], "./data/" + currentVersion[0] + ".mc")
        try:
            urllib.request.urlretrieve(currentVersion[1], "./data/" + currentVersion[0] + ".mc")
        except:
            easygui.msgbox("Es ist ein Fehler aufgetreten!")
            return
        if os.path.isdir("./data/.minecraft/versions/" + currentVersion[0]):
            pass
        else:
            urllib.request.urlretrieve(currentVersion[2], "./data", Reporthook1)
        
from PyQt5 import QtWebKitWidgets
if __name__ == "__main__":
    import sys
    app = QtWidgets.QApplication(sys.argv)
    Form = QtWidgets.QWidget()
    ui = Ui_Form()
    ui.setupUi(Form)
    #Data file erstellen
    DataFile.Erstellen()
    #Versionliste Runterladen/Laden
    try:
        urllib.request.urlretrieve("https://drive.google.com/uc?export=download&id=0B8vOrZYsuW9tRFJteTlhcnJLQTg", "./data/versionlist.ccd")
    except:
            easygui.msgbox("Es ist ein Fehler aufgetreten!")
            sys.exit()
    file = open("./data/versionlist.ccd")
    versions = file.read()
    file.close()
    versions = versions.split("\n")
    versionNames = []
    for i in versions:
        versionNames.append(i.split("|")[0])
    ui.version.addItems(versionNames)
    
    Form.show()
    sys.exit(app.exec_())