問題タブ [tkinter]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
5 に答える
187883 参照

python - Tkinter のイベント ループと一緒に独自のコードを実行するにはどうすればよいですか?

私の弟はプログラミングを始めたばかりで、サイエンス フェアのプロジェクトで、空を飛ぶ鳥の群れのシミュレーションを行っています。彼はほとんどのコードを書き終えており、うまく機能していますが、鳥は刻一刻と動く必要があります。

ただし、Tkinter は独自のイベント ループに時間を浪費するため、彼のコードは実行されません。実行root.mainloop()し、実行し、実行し続けます。実行されるのはイベント ハンドラーだけです。

彼のコードをメインループと並行して実行する方法はありますか (マルチスレッドを使用しないと混乱するため、単純にする必要があります)。

move()現在、彼は自分の関数をに結び付け<b1-motion>て、ボタンを押したままマウスを小刻みに動かしている限り機能するようにする、醜いハックを思いつきました。しかし、もっと良い方法があるはずです。

0 投票する
7 に答える
44623 参照

python - Tkinter ウィンドウの TK アイコンを削除する

ウィンドウのタイトルバーからtkinterアイコンを削除する方法

0 投票する
1 に答える
63159 参照

python - Tkinter Frame が内容に合わせて縮小するのを止める方法は?

これは私に問題を引き起こしているコードです。

ラベルの行をコメントアウトすると、フレームは正しい幅で表示されます。ただし、ラベルを追加すると、フレームがラベルのサイズに縮小されるようです。それが起こらないようにする方法はありますか?

0 投票する
1 に答える
290 参照

python - キャンバスに写真を表示することに関して、既知の Win32 Tkinter バグはありますか?

tkinter のかなり奇妙なバグに気付きました。少なくとも Win32 では、python が tcl と対話する方法に何かがあるためではないかと考えています。

ここに、gif 画像を表示する非常に単純なプログラムがあります。それは完全に機能します。

ここで、プログラムを少し変更して、canvas オブジェクトを関数内から編集します。今回は、空白のキャンバスを取得します。

2 つの唯一の違いは、キャンバス オブジェクトが直接使用されるのではなく、関数に渡されることです。どちらの print ステートメントも同じ結果を返します。tcl/python レイヤーのオブジェクト モデルに何らかの故障があるのではないかと考えています。

皆さん、何か考えはありますか?

ありがとう、/YGA

0 投票する
1 に答える
834 参照

python - tkinter - ウィンドウを表示せずにジオメトリを設定する

ラベルとキャンバスのウィジェットを並べようとしています。そのためには、ラベル ボックスの幅を知る必要があります。ユーザーがシステム フォント サイズを変更した場合にウィジェットを自動調整したいので、1 文字あたり 12 ピクセルをハードコーディングしたくありません。ラベル ウィジェットを測定すると、幅は常に 1 ピクセルです。.update() を呼び出すまでは、正しい値を取得します。しかし、 .update() は私のラベルでウィンドウを画面に表示し、最終的なウィジェットを最終的にパックするとウィンドウは消えます。しかし、これにより、ウィジェットを最初に配置したときに望ましくないフラッシュが発生します。

では、.update() を実行せずにラベル ウィジェットを測定するにはどうすればよいでしょうか? または、画面に表示せずにウィジェットを .update() するにはどうすればよいですか? 問題があれば、私は Python を使用しています。

0 投票する
4 に答える
4256 参照

python - Python でのシフトと Caps Lock のステータス

Python 2.5 を使用して TkInter アプリケーションを作成していますが、caps lock と shift キーの状態 (true または false) を確認する必要があります。私はネット全体を検索しましたが、解決策を見つけることができません。

0 投票する
4 に答える
48847 参照

python - コマンド ラインの結果を tkinter GUI にリダイレクトする

コマンドラインで結果を出力するプログラムを作成しました。(サーバーであり、コマンドラインにログを出力します。)

今、同じ結果を GUI に表示したいと思います。

コマンドラインの結果を GUI にリダイレクトするにはどうすればよいですか?

コンソール アプリケーションをシンプルな GUI に簡単に変換するためのトリックを提案してください。

Linux と Windows で動作するはずです。

0 投票する
2 に答える
4269 参照

python - Python tkinter ラベルは関数の先頭で変更されません

Python で tkinter を使用して、Excel ファイルを CSV に変換するプログラムのユーザー インターフェイスを作成しています。

ステータス バーとして機能するラベルを作成し、statusBarText を StringVar() としてテキスト変数として設定しました。inputFileEntry と outputFileEntry は、入力ファイル パスと出力ファイル パスを含むテキスト変数です。

変換ボタンをクリックするとこの関数が呼び出され、ステータスバーが「変換中...」と変わらないことを除いて、すべてが正常に機能しています。

入力または出力のいずれかが空の場合、ステータス バーのテキストは無効なパラメーターに変更され、リターン コードに応じて成功または失敗に変更されます。問題は、「変換中...」に変わらないことです

その正確な行をコピーしてifステートメントに貼り付けましたが、正常に動作しますが、何らかの理由で、サブプロセスが関数の先頭にあるときにサブプロセスが実行される前に変更されることはありません。どんな助けでも大歓迎です。

0 投票する
3 に答える
4090 参照

python - Tkinter で動的にメニューを作成します。(ラムダ式?)

クリックすると、特定の文字列シーケンスを含むメニューが表示されるメニューボタンがあります。そのシーケンスに正確にどのような文字列があるかは実行時までわからないため、ポップアップするメニューはその時点で生成する必要があります。ここに私が持っているものがあります:

重要な部分は、"if menu_tags:" の下のものです -- menu_tags がリスト ['stack', 'over', 'flow'] であるとします。次に、私がやりたいことは効果的にこれです:

add_tag_stack() は次のように定義されます。

等々。

問題は、変数 'tag' が値 'stack' を取り、次に値 'over' などを取り、new_command が呼び出されるまで評価されないことです。フロー'。したがって、ユーザーが何をクリックしても、追加されるタグは常にメニューの最後のタグになります。

私はもともとラムダを使用していましたが、上記のように関数を明示的に定義するとうまくいくかもしれないと思いました。いずれにしても問題が発生します。変数 'tag' のコピーを使用してみましたが (「current_tag = tag」または copy モジュールを使用)、解決しません。理由はわかりません。

私の心は「eval」のようなものに向かってさまよい始めていますが、誰かがそのような恐ろしいことを伴わない賢い方法を考えてくれることを願っています.

どうもありがとう!

(関連がある場合、Tkinter.__version__ は '$Revision: 67083 $' を返します。私は Windows XP で Python 2.6.1 を使用しています。)

0 投票する
3 に答える
5903 参照

python - メインGUIウィンドウのリセット

メインプログラムを閉じて再開するのと同じことをしたいだけです。ドロップダウンメニューの「新規」のようなオプションがクリックされたときに呼び出したい。root.destroy()を呼び出してから、メインループを再開するようなものです。

どうすればこれを行うことができますか?