Pysimplegui: [Question] * USUÁRIOS DO MAC * o no_titlebar está funcionando para você?

Criado em 28 out. 2020  ·  30Comentários  ·  Fonte: PySimpleGUI/PySimpleGUI

Tipo de problema (aprimoramento, erro, bug, pergunta)

Bug / Problema com tkinter

O no_titlebar funciona?
As dicas de ferramentas funcionam?

Sistema operacional

Mac

Versão Python

3,6+

Porta e versão PySimpleGUI

É aqui que as coisas são importantes para entender.

Eu gostaria de saber de alguém executando 8.610 e também alguém que NÃO executa 8.6.10.

Estou tentando entender se isso é específico para 8.6.10.

Você pode obter a versão detalhada do tkinter adicionando esta linha ao seu código:

print(sg.tkinter.Tcl().eval('info patchlevel'))

Descrição do problema / pergunta / detalhes

Lembro-me dos problemas do no_titlebar no Mac e gostaria de fazer um esforço concentrado para corrigi-los, se houver um problema. Eu realmente preciso de uma ajuda sólida de alguns usuários de Mac.

Eu preciso de alguém que possa fazer isto:

  • Obtenha informações precisas da versão tkinter (o código I é fornecido)
  • Ser capaz de tentar algumas possíveis correções ao postar no GitHub

Código para duplicar

Um programa curto que isola e demonstra o problema (ou seja, não cole um link para seu programa de 400 linhas .... em vez disso, cole seu programa de 10 linhas completo).

Sim, é difícil restringir os problemas, mas faz parte do processo de depuração. Ajude-me a ajudá-lo fornecendo algo que pode ser executado para que o trabalho de obtenção de uma correção ou solução alternativa possa começar imediatamente.

Este bloco de código pré-formatado está pronto para você colar no seu trecho de código:

print(sg.tkinter.Tcl().eval('info patchlevel'))

Você pode testar para ver se tem problemas executando:

import PySimpleGUI as sg

sg.popup_no_titlebar('This should not have a titlebar')

image

Mac Specific Issue community input desired help wanted

Todos 30 comentários

Parte do problema de depurar isso no passado é que nunca houve realmente uma tabela apropriada feita para ajudar na depuração. Existem 3 variáveis ​​em jogo:

  1. Versão PySimpleGUI
  2. versão tkinter
  3. Versão MacOS

Na maioria das vezes, o foco é a versão tkinter. Não tenho certeza se o tkinter é responsável por todos os problemas detectados.

Aqui está minha análise:

PySimpleGUI v4.30.0
tkinter v8.6
MacOS 10.15.7

Também quero mencionar que uso o Homebrew para meus binários python.

Screen Shot 2020-10-28 at 8 10 31 PM

Editar:

Python v3.8.1

macOS High Sierra Versão 10.13.6
PySimpleGUI versão 4.30.0.12
tcl ver = 8.6 tkinter version = 8.6
versão detalhada de tcl = 8.6.10
Python versão 3.8.6

E ... funciona!
it_works

editar: O ambiente que me deu menos dores de cabeça em relação ao tkinter:

Homebrew -> brew install tcl-tk
Homebrew -> brew install pyenv -> Python (veja abaixo)

env \
  PATH="$(brew --prefix tcl-tk)/bin:$PATH" \
  LDFLAGS="-L$(brew --prefix tcl-tk)/lib" \
  CPPFLAGS="-I$(brew --prefix tcl-tk)/include" \
  PKG_CONFIG_PATH="$(brew --prefix tcl-tk)/lib/pkgconfig" \
  CFLAGS="-I$(brew --prefix tcl-tk)/include" \
  PYTHON_CONFIGURE_OPTS="--enable-framework --with-tcltk-includes='-I$(brew --prefix tcl-tk)/include' --with-tcltk-libs='-L$(brew --prefix tcl-tk)/lib -ltcl8.6 -ltk8.6'" \
  pyenv install 3.8.6

pyenv global 3.8.6

e para torná-lo meu python padrão:

echo -e 'if command -v pyenv 1>/dev/null 2>&1; then\n eval "$(pyenv init -)"\nfi' >> ~/.bash_profile

Segui todos os passos listados por @norambna e fiz funcionar para mim. No entanto, era um pouco complicado pular através de todos os aros.

Python v3.8.6
PySimpleGUI v4.30.0
tkinter v8.6
MacOS 10.15.7
pyenv v1.2.21
tcl-tk v8.6.10

image

Estou feliz que ajudou! Eu sei que tive dificuldade em encontrar uma solução para todos os meus problemas do macOS / tkinter. Isso não resolverá todos os problemas do tkinter, mas é claramente a melhor maneira de trabalhar com ele no macOS.

Parece que a versão 8.6.10 do tkinter é o que corrige esse problema?

Se todas as versões tiverem problemas, exceto 8.6.10, eu poderia verificar essa versão e aplicar a "correção" apenas para versões não 8.6.10.

O que estou realmente confuso é se este é um problema recente ou se a barra de título nunca funcionou no Mac. Parece estranho que nunca tivesse funcionado, mas é difícil dizer com certeza.

A "correção" que vi irá potencialmente quebrar outras coisas, e é por isso que hesitei em adicioná-la ao código.

Essas etapas são muito feias, então acho que tenho que fazer algo a respeito. Não se pode esperar que os usuários tenham tantos problemas. Vou reunir uma versão do GitHub com a correção que verifica o número da versão do tkinter e só o aplica quando a versão não é 8.6.10.

Parece que a versão 8.6.10 do tkinter é o que corrige esse problema?

Para mim sim. 8.6.10 resolve uma tonelada de problemas.

Acabei de postar 4.30.0.13 que contém um patch se a versão for menor que 8.6.10.

Se isso "resolver" o problema, quero tentar mais um patch. Este novo patch limpa o sinalizador wm_overrideredirect após configurá-lo pela primeira vez.

root.wm_overrideredirect(True)
root.wm_overrideredirect(False)

O que eu gostaria de tentar a seguir é defini-lo como True novamente para que a operação seja True False True. A ideia aqui é que, para alguns sistemas, ele pode estar funcionando corretamente se o valor for definido como True. O que não quero fazer é interromper todas as instalações em que está funcionando corretamente hoje e defini-lo como True novamente pode fornecer uma solução alternativa que faz a coisa certa em todas as versões do tkinter no Mac.

Você verá esta mensagem impressa no console se o patch for aplicado:
* Applying Mac no_titlebar patch *

Uma maneira de testar isso é por meio do equipamento de teste, que evitará que você tenha que escrever código para chamar e testar pop-ups. Uma das guias no equipamento de teste (invocada executando o arquivo PySimpleGUI.py ou chamando sg.main() ) é usada para testar pop-ups.

image

Isso permitirá que você verifique rapidamente a janela sem barra de título, bem como chama pop-ups com uma barra de título.

Pode ser difícil identificar porque o plano de fundo é o mesmo da janela de teste. Se você clicar no botão No Titlebar , verá esta pequena janela

image

Espero que isso corrija a versão não 8.6.10, bem como a não execução na 8.6.10+. Do contrário, farei outro teste rapidamente para ver se a configuração funciona novamente.

Se conseguirmos resolver isso, colocarei o comunicado no PyPI como um lançamento de alta prioridade.

Preciso de ajuda de usuários de Macs

Houve um patch postado no GitHub para tentar contornar esse problema de não haver barra de títulos. Eu preciso entender se:

  • O patch corrige o problema em sistemas não 8., 6.10
  • O patch não causa problemas com 8.6.10

Alguém pode baixar a versão do GitHub e testá-la?

Eu adoraria ajudar. Tenho tudo configurado até a versão do tkinter, mas não tenho certeza de como importar a versão 4.30.0.13 do PySimpleGUI. Como exatamente você baixa essa versão e a usa?

Deve ser com o mesmo patch na maioria das versões de atualização.

Atualizando do GitHub usando PySimpleGUI

Não tenho certeza do que fazer com este patch. Estou reunindo uma versão do PyPI agora e, sem que ele seja devidamente testado em um Mac, terei que extrair o código da versão. Prefiro liberar um problema conhecido do que potencialmente um novo conjunto de problemas. Claro, minha preferência é consertar isso para sempre e postar no PyPI.

Se houver usuários de Mac que são capazes de executar alguns testes, eu, e estou supondo que alguns de seus colegas usuários de Mac, agradeceríamos a ajuda.

Não quero atrasar o lançamento enquanto espero que os usuários do Mac testem o novo código. Portanto, adicionei mais código para controlar quando o patch é executado. Não posso simplesmente lançar essa "solução" e potencialmente quebrar os usuários Mac existentes. Bem, tecnicamente eu poderia, mas prefiro não criar problemas para usuários que têm código funcionando hoje.

Para habilitar o patch para janelas sem barra de títulos em um Mac, chame set_options com o parâmetro enable_mac_notitlebar_patch definido como True.

    sg.set_options(enable_mac_notitlebar_patch=True)

O patch causará uma chamada adicional quando uma janela sem barra de título for criada:

root.wm_overrideredirect(False)

O patch só será executado em Macs que executam versões do tkinter <8.6.10.

Por padrão, o patch está desabilitado. Você tem que tomar uma ação afirmativa para obter o patch chamando set_options .

Este código está na versão 4.30.0.26 e agora no GitHub. Ele será lançado na versão 4.31.0 em breve.

Como eu disse antes, gostaria de executar qualquer teste em seu patch anterior. Tenho dois dispositivos mac diferentes com versões diferentes do sistema operacional. Também estou executando várias versões de python e tcl / tk.

Desculpe se esta é uma pergunta idiota, mas como faço para instalar essas versões (4.30.0.13 ou 4.30.026)? Eu costumo usar pip install, mas se eu tiver que fazer algo diferente, preciso de um pouco de orientação para ajudá-lo.

4.31.0 foi postado no PyPI hoje cedo. Você pode instalá-lo pip como se tivesse outras versões.

Adicione a linha de código no post anterior e você estará executando com o patch habilitado.

 sg.set_options(enable_mac_notitlebar_patch=True)

Você pode instalar as versões do GitHub usando a interface de usuário sg.main () clicando no botão vermelho que diz "Upgade". 4.31.0 é a versão atual no GitHub e a que foi lançada para o PyPI.

Fiz alguns testes diferentes em diferentes versões de tcl / tk (8.5.9, 8.6.8, 8.6.10) e descobri que o código original
image
fará com que a barra de título pareça estar desativada, mas posso clicar no botão minimizar ou x. Se eu minimizar e, em seguida, trazê-lo de volta, a barra de título é completamente desativada. Isso acontece em 8.5.9 e 8.6.8. Tudo funciona bem para 8.6.10. (como mencionado nos comentários anteriores)

Em seguida, tentei executá-lo com o seu patch.
image
O que acabou acontecendo foi que a barra de título estava ativa e ambos os botões minimizar e x funcionavam, e quando eu minimizasse e trouxesse a janela de volta, ela seria desativada, semelhante ao que mencionei acima.

Portanto, os problemas ainda estão acontecendo com as versões 8.6.8 e inferiores.

Aqui estava o código original usando tkinter para obter uma janela arrastável sem barra de título.
image
Eu encontrei esse código quando estava procurando para tentar resolver esse problema de tentar ocultar a barra de título. Isso está usando tcl / tk 8.6.8 ou abaixo
https://stackoverflow.com/questions/29641616/drag-window-when-using-overrideredirect

Versões
MacOS: 10.15.7
PySimpleGUI: 4.31.0 mais recente
Python: 3.8.1, 3.8.6, 3.9.0

Para tcl / tk 8.6.8 ou inferior
nenhum patch ou exemplo original funcionam

Você viu uma mensagem no console de que o patch estava sendo aplicado?

O que é estranho nos testes é que a técnica que estou usando para obter a barra sem título é uma que foi postada anteriormente aqui. É basicamente para repetir a substituição, mas com um valor False. Também é estranho que haja um comportamento de bloqueio que parece ser novo.

Você pode ter certeza de que vê esta mensagem:

'* Applying Mac no_titlebar patch *

Se você não vir esta mensagem, o patch não foi aplicado.

Seria útil se você imprimisse a versão do PySimpleGUI além de imprimir a versão do tkinter apenas para ter certeza de que estamos trabalhando com a combinação de variáveis ​​que pensamos que estamos.

Estou suspeitando cada vez mais que o MacOS também tem um papel a desempenhar aqui. Eu não tinha ouvido falar desse problema sem barra de título e do problema com as dicas até o início deste ano. Esses recursos foram alguns dos primeiros a serem lançados no PySimpleGUI e, ainda assim, não houve relato de problemas com esses recursos até não muito tempo atrás.

A parte de arrastar para qualquer lugar disso não foi discutida antes e são novos dados. Podemos nos concentrar apenas em testar e trabalhar o código sem barra de título?

A "correção" para isso pode muito bem acabar sendo que os usuários do Mac devem executar o tkinter 8.6.10. Estou gastando muito tempo e energia em um problema que é claramente um bug no software Mac. Não poder testar o código está tornando essa tarefa quase impossível de ser concluída.

Já estive aqui uma vez com o bug do botão tk, que era um problema conhecido há mais de 6 anos e ainda não foi corrigido. A correção para isso foi adicionar suporte para botões ttk ao PySimpleGUI. Foi muito trabalhoso, mas acabou permitindo que os usuários do Mac usassem o PySimpleGUI. Ao contrário desse bug, este parece ter chamado a atenção dos desenvolvedores do tkinter / Mac e foi corrigido na versão 8.6.10. Isso significa que há um caminho a ser seguido pelos usuários do Mac, que eles podem seguir por conta própria, sem esses tipos de hacks e soluções alternativas sendo adicionados ao código.

Eu gosto dos meus usuários de Mac, mas é difícil justificar investir muito no suporte a essa plataforma quando o número de usuários é pequeno. Não acredito que as instalações já tenham quebrado 10% para o Mac.

image

Sim, parece um grande aborrecimento para um pequeno grupo de usuários. Acabei de baixar o macOS v11 (novo esta semana) e parece haver algum comportamento diferente. Por exemplo, os botões minimizar ex estão completamente desabilitados agora, ao contrário do meu post anterior.

Uma coisa que também notei com o tkinter no macOS v11 é que para tk / tcl v8.5.9, só preciso dizer root.overrideredirect(True) sem barra de título, mas quando tento fazer o mesmo no tk / tcl v8.6.8 não funciona. Eu ainda preciso fazer

root.overrideredirect(True)
root.overrideredirect(False)

para fazê-lo funcionar.

Para sua informação, estava recebendo a mensagem de log dizendo que o patch estava sendo aplicado. Além disso, a versão do PySimpleGUI que eu estava usando foi a 4.31.0, lançada em 13 de novembro de 2020.

Não me importo em apoiar um pequeno grupo de usuários com algum código específico para a plataforma Mac. O problema é que tem sido um alvo móvel. Não consegui encontrar uma base estável recentemente. As coisas estavam aparentemente indo muito bem depois que os usuários do Mac passaram a instalar a partir de Python.org em vez de Homebrew. Isso afastou todo mundo de lançamentos que tinham problemas com botões e tabelas. Mas então algo parece ter mudado. Acho que provavelmente foi o Mac OS.

Como mencionei anteriormente, existem 3 variáveis ​​em jogo. Existe a versão tkinter, a versão PySimpleGUI e a versão MacOC. Estou descartando a versão do Python dessa lista porque, embora o tkinter seja empacotado com o Python e possa ser diferente de uma versão do Python para outra, contanto que estejamos rastreando a versão do tkinter, a versão do Python não importa. Não tenho uma ideia do resultado porque as combinações são para essas 3 variáveis ​​além de um relatório ocasional de que "não funciona".

Fazer qualquer coisa com 8.5.9 é ir muito longe. PySimpleGUI suporta Python 3.4 e superior, que remonta a 6 anos. Isso tem sido um desafio, mas razoável, pois o Raspberry Pi costuma vir com essa versão do Python. Há pouco que posso fazer para contornar isso, a não ser forçar os usuários do Pi a atualizar sua versão do Python e prefiro que isso não aconteça, pois não é algo trivial.

8.5.9 foi lançado há mais de 10 anos. Algum contexto ... o mesmo ano em que 8.5.9 foi lançado, então foi 2.7.0. Python 3 estava em 3.1. É voltar muito longe para ter algum valor real. Eu entendo o contexto para o qual você está usando, que é para demonstrar que em algum momento nenhuma barra de título funcionou, mas voltar uma década para encontrar uma versão funcional de qualquer coisa é bastante extremo. É uma vida inteira em software.

Ouvir que o MacOS v11 influencia o funcionamento do tkinter é ainda mais exasperante. O próprio sistema operacional não deve ter nenhum impacto ... zero ... em como o tkinter e o Python funcionam.

É decepcionante saber que o patch não teve um impacto positivo, pois o que ele faz é definir o wm_overrideredirect de volta para False, o que deve corrigir o problema. Aqui está o código que é executado para no-titlebar em um Mac:

                MyFlexForm.TKroot.wm_overrideredirect(True)
                # Special case for Mac. Need to clear flag again if not tkinter version 8.6.10+
                if sys.platform.startswith('darwin') and ENABLE_MAC_NOTITLEBAR_PATCH and (sum([int(i) for i in tclversion_detailed.split('.')]) < 24):
                    print('* Applying Mac no_titlebar patch *')
                    MyFlexForm.TKroot.wm_overrideredirect(False)

A mensagem "Application Mac no_titlebar patch" é mostrada antes de definir o wm_overrideredirect de volta para False.

Eu adoraria publicar uma versão do PySimpleGUI que funcione com todas as versões do Mac OS em todas as versões do tkinter, mas é o que tenho tentado fazer desde o lançamento inicial do PySimpleGUI, e parece que os últimos esforços têm consistentemente aquém.

A única correção de trabalho conhecida de que estou ciente neste momento é exigir que os usuários do Mac instalem o 8.6.10. Isso parece produzir resultados que funcionam. A "correção" do PySimpleGUI parece ser uma mensagem de erro que é impressa quando alguém tenta criar uma janela sem barra de título ou tenta definir dicas de ferramentas. É uma solução terrível do ponto de vista da usabilidade, mas não vejo outra saída para isso. É melhor do que exigir que os usuários instalem uma versão do tkinter com uma década.

Estou preocupado com o uso de instalações homebrew de Python e tkinter. Foi apenas no ano passado que descobrimos que o homebrew era a fonte dos problemas e que a instalação a partir de Python.org corrigiu esses problemas.

Se você quiser tentar adicionar chamadas a wm_overrideredirect ou realizar alguma outra operação no objeto tkinter root , você pode acessá-lo diretamente usando a variável de membro Window window.TKroot . Talvez você possa encontrar uma combinação de ligações que funcione. Estou eliminando evidentemente.

Não acredito que estejam relacionados, mas você pode tentar desativar a configuração modal da janela como um teste.

Só quero esclarecer algo sobre tk / tcl 8.5.9 ... o único motivo pelo qual eu estava usando essa versão é porque ela foi fornecida com a instalação do homebrew python 3.9.1. Eu estava apenas usando tudo o que eles me deram. Então, como você disse, pode ser um problema caseiro.

Vou mexer um pouco com o download de algumas versões do python.org. Não tenho nenhum problema em ajudar você a descobrir isso. Talvez eu pudesse fazer alguns testes um pouco mais controlados para as diferentes variáveis ​​em jogo. Pode demorar um pouco para fazer isso, mas se você tiver coisas específicas que deseja que eu tente, além do que mencionou anteriormente, me avise.

Outra coisa que queria mencionar é que quando uso o tkinter e faço a chamada root.overrideredirect(True) uma janela nem aparece. Portanto, há um pouco mais acontecendo aqui se você me perguntar, já que ao usar PySimpleGUI a janela aparecerá, embora não remova a barra de título, apenas a desativa. (para versões <8.6.10)

Não tenho nenhum problema em ajudar você a descobrir isso.

Bem ... vou aproveitar esta oportunidade. Eu gostaria de resolver este problema para que os usuários de Mac não sejam forçados a instalar o 8.6.10. Não é uma coisa fácil de fazer, como foi mostrado pelos comentários acima.

tk / tcl 8.5.9 ... o único motivo pelo qual eu estava usando essa versão é porque ela foi fornecida com a instalação do homebrew python 3.9.1.

WOW .... pule liso WOW ....

Que exemplo gráfico de porque usar o Homebrew para instalação do Python não é uma boa ideia. Por um lado, pude ver alguém dizendo isso porque "funciona" então é bom usar, mas não é tão simples. A quantidade de código tkinter adicionado desde 8.5.9 tem que ser significativa, já que o tkinter não parou por uma década.

Acho isso uma notícia impressionante. :-( Que batalha difícil.

Tente instalar a partir de Python.org. Algum tempo atrás, acrescentei a necessidade de instalar de Python.org à documentação:

https://pysimplegui.readthedocs.io/en/latest/#macs

É tão estranho que esses problemas parecem ter surgido do nada. Mesmo que o número de usuários do Mac seja pequeno, eles existem e estão usando o PySimpleGUI no tkinter. Tenho certeza que se esse recurso fosse quebrado 2 anos atrás, alguém teria dito algo. Eles certamente reclamaram dos problemas com as cores dos botões.

Seria bom se o teste fosse organizado e monitorado com cuidado. Uma matriz de combinações seria muito útil.

_Eu gostaria de ver se há uma maneira de tentar versões mais antigas de tudo e depois avançar até que algo quebre._

Esse seria meu plano ideal.

Apenas meus 2 centavos. Não sou um usuário Mac, mas tive que desenvolver algo em python para macOS, então foi aqui que tive minha experiência limitada.

Alguns meses atrás, quando tentei minhas opções, tentei versões de python baixadas diretamente de python.org. Naquela época, eu gastei muito tempo com o python.org versão 3.6.8, que vem com o Tcl / Tk 8.6.8. E definitivamente tem bugs ao tentar os vários elementos do PySimpleGUI. Acho que é apenas tkinter, não é tão polido para o macOS. Por padrão, a versão Homebrew do Python NÃO vem com Tcl / Tk (veja aqui e aqui ), mas é claro que provavelmente existem muitas "cervejas" não oficiais. A versão Pyenv não vem com Tcl / Tk. Usei o truque que postei acima para experimentar o Tcl / Tk 8.6.10. Como disse, ainda não está perfeito, mas nos meus testes foi definitivamente a melhor opção. Tive que fazer um produto, testei o que funcionava e o que não funcionava e usei as coisas que funcionaram para o meu projeto.

BTW, janelas modais não funcionam com python.org versão 3.6.8, que vem junto com Tcl / Tk 8.6.8 e eles também dão problemas com um pyenv python e Tcl / Tk 8.6.10. Veja aqui .

editar: e o macOS vem com Tcl / Tk 8.5.9 como parte do sistema operacional. É por isso que você obtém essa versão se o seu python não vier empacotado com uma versão mais recente Tcl / Tk. Portanto, se você estiver usando uma instalação normal do brew do python, esse python usará a versão Tcl / Tk que vem com o sistema operacional. É por isso que você obtém Tcl / Tk 8.5.9 ao usar um homebrew python regular. E é por isso que meu truque deve instruir explicitamente o python de pyenv a usar o brew install mais recente de tcl-tk

Oh ... eu esqueci daquela coisa modal.

Os testes de pop-up que estamos executando podem ser tentados com o modal desativado.

@tkozzer .... você pode tentar este teste pop-up?

sg.popup_no_titlebar('This should not have a titlebar', modal=False)

Além disso, apenas para ter certeza de que drag_anywhere não está causando problemas, tente este pop-up também.

sg.popup_no_titlebar('This should not have a titlebar', modal=False, grab_anywhere=False)

Para obter o máximo de controle e visibilidade de quais opções estão sendo definidas, mudar para a criação de uma janela é provavelmente a melhor maneira de testar. Este é um programa com o qual podemos trabalhar neste problema:

import PySimpleGUI as sg


layout = [[sg.Text('A no-titlebar test')],
          [sg.Button('Ok'), sg.Button('Exit')]]

window = sg.Window('Title', layout, no_titlebar=True, grab_anywhere=False, modal=False)

while True:
    event, values = window.read()
    print(event, values)
    if event in (sg.WIN_CLOSED, 'Exit'):
        break

window.close()

Estou preparando um lançamento hoje, pois há algumas mudanças que precisam chegar ao PyPI rapidamente. Se as janelas modais estiverem realmente quebradas para o Mac, em toda a linha, para todas as versões do tkinter, então irei desativá-las nesta versão. Alguém pode verificar se as janelas modais não funcionam corretamente para 8.6.10 e outras versões? Ainda não estou certo sobre as combinações de tkinter e MacOS que produzem esses diferentes problemas.

Posso confirmar que as janelas modais não funcionam para python.org python 3.6.8 que vem com Tcl / Tk 8.6.8. E eles não funcionam para python 3.6.11 de pyenv trabalhando com Tcl / Tk 8.6.10 do Homebrew. Essas são as únicas versões que tentei com esse problema específico.

pyenv não fornece nenhum pacote / biblioteca por conta própria. Isso ajuda na configuração. Você ainda precisa escolher o que instalar e o que deseja alternar.

Para o Mac, a versão Python não importa tanto quanto o tkinter e acho que a versão MacOS. O tkinter 8.6.8 deve ser executado exatamente da mesma forma no 3.6, 3.7, 3.8, 3.9. O que pode variar é qual versão do tkinter é instalada quando você instala 3.6, 3.7, etc, pelo menos no Windows. Um motivo para obter o Python em Python.org é que você obtém uma versão específica do tkinter empacotada com a instalação.

a versão Python não importa tanto quanto o tkinter e eu acho que a versão MacOS

macOS High Sierra Versão 10.13.6 para todos os meus testes.

Esta página foi útil?
0 / 5 - 0 avaliações

Questões relacionadas

flowerbug picture flowerbug  ·  4Comentários

MikeTheWatchGuy picture MikeTheWatchGuy  ·  5Comentários

OPMUSER picture OPMUSER  ·  5Comentários

scmanjarrez picture scmanjarrez  ·  5Comentários

mozesa picture mozesa  ·  5Comentários