Coder Social home page Coder Social logo

Comments (14)

mindstorm38 avatar mindstorm38 commented on May 30, 2024

Il me semble d'avec tkinter, ou plus généralement les applications "windowed" (fenétrées), il faut explicitement dire à l'interpréteur python de ne pas lancer la console.

Sinon je pense que cette réponse stackoverflow peut vous intéresser (cela dépend de l'OS utilisé).

En tout cas ça faire plaisir de voir que qqun s'intéresse au projet ^^

from portablemc.

SyFizz avatar SyFizz commented on May 30, 2024

En soi, c'est pas tant mon GUI tkinter le problème, c'est la fênetre de logs du jeu...

Même en lançant lançant le launcher avec pythonw, effectivement les logs spécifiques au laucher ne s'affichent pas, mais à l'ouverture du jeu j'ai une fênetre java.exe qui m'affiche les logs :(

Je pense qu'il faudrait trouver comment le launcher officiel les met dans un fichier plutôt que dans une fênetre qui reste ouverte

P.S : En plus de m'intéresser au projet, j'habite aux alentours de grenoble aussi :p
Et pour info, le projet scolaire sur lequel j'utilise votre launcher se passe au lycée Portes de L'Oisans, à Vizille

from portablemc.

mindstorm38 avatar mindstorm38 commented on May 30, 2024

Quel OS? C'est pour savoir car la fonction os.system ne régis pas pareil suivant les systèmes

from portablemc.

SyFizz avatar SyFizz commented on May 30, 2024

Sous Windows 10 :)

from portablemc.

mindstorm38 avatar mindstorm38 commented on May 30, 2024

Je pense avoir trouvé, un détail m'avait échappé! Vous utilisez la commande "start" pour lancer le script, le problème de cette commande est qu'elle ouvre systématiquement l'application qui peut lancer le programme donné (donc le shell python ici, même si c'est dans un invite de commande). Du coup il faudrait plutôt utiliser l'executable python à la place de "start" (récupérable avec sys.executable).

PS: Sur les dernières versions de python il est conseillé d'utiliser le module subprocess à la place de os.system, ou au moins la fonction subprocess.run. Mais bon, faites ça si mon correctif fonctionne.

from portablemc.

SyFizz avatar SyFizz commented on May 30, 2024

Donc si je fais os.system(sys.executable() './bin/portablemc.py -u '+getInGameName()+' -v '+getSelectedVersion() + ' --main-dir ./data --jvm ./bin/bin/java.exe'), c'est censé fonctionner ? Si oui, ça ne fonctionne pas, j'ai juste plus rien qui apparaît :(

from portablemc.

mindstorm38 avatar mindstorm38 commented on May 30, 2024

Dans l'idée c'est ça! Cependant je conseillerais de l'écrire en une seule chaine de formatage, par exemple :

os.system("{} ./bin/portablemc.py -u {} -v {} --main-dir ./data --jvm ./bin/bin/java.exe".format(sys.executable(), getInGameName(), getSelectedVersion()))

Le but est d'éviter les petites erreurs comme l'espace ou le '+' manquant après sys.executable(), ça donne une meilleur idée du résultat final. Ces erreurs pourraient être à l'origine du problème?

from portablemc.

SyFizz avatar SyFizz commented on May 30, 2024

Désolé, je suis un peu nul en python, mon truc c'est le java 🙁
Je teste ça de suite ^^

EDIT: Marche po

Exception in Tkinter callback
Traceback (most recent call last):
  File "C:\Users\UtilisateurLambda\AppData\Local\Programs\Python\Python39\lib\tkinter\__init__.py", line 1892, in __call__
    return self.func(*args)
  File "E:\MC\main.pyw", line 20, in launchGame
    os.system("{} ./bin/portablemc.py -u {} -v {} --main-dir ./data --jvm ./bin/bin/java.exe".format(sys.executable(), getInGameName(), getSelectedVersion()))
TypeError: 'str' object is not callable

EDIT 2:
J'ai juste remplacé les premiers {} par pythonw (en changeant le format(), évidemment)
Et du coup j'ai toujours le même soucis :
image

from portablemc.

mindstorm38 avatar mindstorm38 commented on May 30, 2024

Ahhhhhhh désolé xD sys.executable est une chaine, pas un fonction!
Ah, et aussi il faudrait essayer avec l'executable javaw (au lieu de java).

from portablemc.

SyFizz avatar SyFizz commented on May 30, 2024

Okay, je tente ça de suite, j'édite ensuite :)

ça fonctionne avec javaw.exe ! Merci beaucoup, le problème était là depuis le début :p

from portablemc.

mindstorm38 avatar mindstorm38 commented on May 30, 2024

C'est tout de même très bizarre, car en testant sur mon PC j'avais pas le pb (merci windows xD)!

from portablemc.

SyFizz avatar SyFizz commented on May 30, 2024

Ahah, désolé pour le faux espoir, mais cacher la console n'était pas ma seule requête :p

Du coup, je voudrais savoir si lors du téléchargement des fichiers du jeu, il y a moyen de récupérer le "xx.xx% of total" pour en faire une barre de progression tkinter ?

Si vous préférez, on peut passer sur Discord afin d'éviter de flooder les issues sur le repo x)

from portablemc.

mindstorm38 avatar mindstorm38 commented on May 30, 2024

=> Mindstorm38#8760

from portablemc.

SyFizz avatar SyFizz commented on May 30, 2024

Ajouté :)

from portablemc.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.