質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

Tkinter

Tkinterは、GUIツールキットである“Tk”をPythonから利用できるようにした標準ライブラリである。

Q&A

解決済

1回答

9135閲覧

tkinterで表示した画面が真っ黒になる

sato000

総合スコア1

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

Tkinter

Tkinterは、GUIツールキットである“Tk”をPythonから利用できるようにした標準ライブラリである。

0グッド

0クリップ

投稿2022/05/25 22:35

最近、pythonを勉強始めました。
tkinterでGUIアプリを作成しようとしたところ、立ち上がったウィンドウが真っ黒で文字が見えません。
ボタンは表示されます。
色々と調べていましたが、事象が解決しなかったので質問を投稿させていただきました。

【前提・実現したいこと】
tkinterで文字を表示させたい

【発生している問題・エラーメッセージ】
ウィンドウは立ち上がるが、WARNINGが表示される

DEPRECATION WARNING: The system version of Tk is deprecated and may be removed in a future release. Please don't rely on it. Set TK_SILENCE_DEPRECATION=1 to suppress this warning.

【該当のソースコード】

python

1import tkinter 2tkinter._test()

【自分で調べたことや試したこと】
tcl-tkを削除してから最新版をインストール
pythonを再インストール

下記質問を参考に、python-buildを変更。(正直、何やってるのかわかってないです...)
https://teratail.com/questions/24bgwl9f185as0

【使っているツールのバージョンなど補足情報】
ターミナルから実行した結果です。
% python --version
Python 3.10.4

%brew info tcl-tk
tcl-tk: stable 8.6.12 (bottled) [keg-only]

%pip --version
pip 22.1.1 from /Users/[ユーザフォルダ]/.pyenv/versions/3.10.4/lib/python3.10/site-packages/pip (python 3.10)

% pyenv versions
system

  • 3.10.4 (set by /Users/[ユーザフォルダ]/.pyenv/version)

macOS Monterey
version 12.4
プロセッサ 3GHz 6コア Intel Core i5
メモリ40GB 2667MHz DDR4

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

問題点: プラットフォームでサポートされていないバージョンのtcl-tkが利用されている

実際に利用されている tcl-tk のバージョンを確認して見て下さい

python

1import tkinter 2tkinter.Tcl().eval('info patchlevel')

pythonを再インストール

インストール手段により異なる為、再インストールの具体的な手順が必要です

  • brew
  • pyenv
  • 公式サイトからuniversal2 をdownload

もしプログラムを動かしたいだけなら、公式サイトからのダウロード・インストールを試してみてください。

brew/pyenv で管理したい場合は、brew でインストールしたバージョンのtcl-tk を利用するように
Pythonを構成する必要があります。

参考: Macのpyenv環境下でtkinterを使えるようにする方法
※ OSのversion は異なりますが、問題は同じなので解消法は参考になるはずです

例えば、tcl-tkのPATHがビルド時に見つかるよう、環境変数のPATH設定を行っているか、辺りが懸念点

%brew info tcl-tk

tcl-tk: stable 8.6.12 (bottled) [keg-only]

「keg-only」 なので、インストールしただけでは利用されません。追加設定が必要です、

  • 簡易的な方法は「brew link」について調べて見て下さい。PATHの通った場所にリンクを生成します。

 但し、名前の被りがある場合、既存の他のプログラムに影響が出る可能性があります。
(リスクのある操作なので、デフォルトのインストールした状態では設定されていない)

  • 自分で環境変数を設定する場合は、インストール時もしくは brew info の情報を元に環境変数を設定

macOS の tkinter に関して
https://www.python.org/download/mac/tcltk/

If you are using macOS 12 Monterey or later, you may see problems with file open and save dialogs when using IDLE or other tkinter-based applications. The most recent versions of python.org installers (for 3.10.0 and 3.9.8) have patched versions of Tk to avoid these problems. They should be fixed in an upcoming Tk 8.6.12 release.

との事なので、8.6.12 が使われるように構成出来れば解決するはずです。

投稿2022/05/26 02:53

teamikl

総合スコア8664

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

sato000

2022/05/26 13:49

教えていただいた下記サイトを参考にしたら、できるようになりました。 >>参考: Macのpyenv環境下でtkinterを使えるようにする方法 ご教授いただき、ありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問