問題タブ [tk]

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 投票する
3 に答える
4845 参照

python - OSXでTkinterアプリのコンソールを非表示にする

GUI Tkinterベースのアプリを起動するときにターミナルを非表示にしようとしていますが、OSXでapp.pyファイルをダブルクリックすると、ターミナルウィンドウが表示されます。拡張子を.pywに変更し、/ usr / bin / pythonwで起動しようとしましたが、何があってもターミナルウィンドウが表示されます。

以下のtry/exceptを追加しようとしましたが、実行すると、次のエラーが表示されます。「無効なコマンド名「console」」が表示されるターミナルウィンドウに表示されます。

ターミナルウィンドウが表示されないようにする方法を見つけることができませんでした。誰かアイデアがありますか?

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

python - サブプロセスが終了した後にボタンに色を付ける

現在のディレクトリにPythonファイルのリストを作成し、それぞれのボタンを生成するTkpythonプログラムがあります。ボタンをクリックすると、対応するPythonプログラムが新しいgnome-terminalのサブプロセスを介して起動されます。新しい端末でのサブプロセスの実行が終了したら、ボタンの色を赤に切り替えたいのですが。残念ながら、ボタンの色はすぐに変わります。

ほとんどすぐに、p.poll == Noneの間待つことができ、gnome-terminalが作成されるまで少し時間がかかることがわかります。ただし、新しいターミナルでプロセスがまだ実行されている場合でも、ターミナルが作成されるとすぐにボタンが赤になります。新しいgnome-terminalを作成してから、実行したいプロセスを通信することもできません。gnome-terminalはbashの新しいインスタンスを作成し、doneを返すだけのようです。そのため、stdinと通信しようとすると、パイプエラーが発生します。

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

tcl - Tcl/Tk 初期化スクリプト中の tk_messageBox の問題

次の Tcl スクリプトでは、エントリ ウィジェットは入力を受け付けません。表示されますが、反応しません。

tk_messageBox 行をコメント アウトすると、エントリ ウィジェットは正常に動作します。この動作の原因と修正方法を教えてください。

Windows で Tcl/Tk 8.5.2 を使用しています。

明確にするために、私の問題は、メッセージボックスが閉じられた後に入力ボックスが壊れていることです。入力ボックスはフォーカス/入力を受け入れず、キャレットを表示しません。私は、自分でコンパイルした Tcl/Tk と Equi4 の tclkit を使用して、Windows XP と Vista でこれをテストしまし。いずれの場合も、初期化スクリプトでメッセージ ボックスが表示されている場合、エントリは機能しません。

編集:もう1つ。コードがインタラクティブなウィッシュ コンソールに入力された場合、この「バグ」は存在しません。コードがファイル内にあり、ファイル名を引数としてコマンドラインからwishが呼び出された場合にのみ失敗するようです。

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

python - Python MSI インストーラーに Tcl/Tk ヘッダー ファイルが付属していないのはなぜですか?

python.org からダウンロード可能な MSI インストーラーには、Tcl/Tkヘッダー(ソースではない) ファイルが含まれていません (matplotlib などの一部のパッケージをコンパイルするために必要です)。それらを含めない理由を知っている人はいますか?

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

widget - tkですべてのウィジェットの状態を無効にする方法は?

単一のprocでtkウィンドウのすべてのウィジェットを無効にする方法はありますか? 引数は、最初のトップレベル パスのみにすることができます。

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

python - Tcl/Tk Tkinter バージョン 8.4 および 8.5 が Mac Os X 10.4.11 と python 2.6.4 で競合する

matplot lib をインストールするために Tkinter を起動して実行するのに問題があります。

Mac OS X 10.4.11 を実行しており、Python 2.6.4 をインストールしました。

他のいくつかの戦いの後、matlotlib をインストールするための残りの戦いの 1 つは、動作するバージョンの Tkinter を用意することです。Mac には Xcode と Python からいくつかありますが、それらは便利な場所にインストールされていないと思いますか? Python 2.6.4 をインストールした後、 import _tkinter が失敗しました。そこで、Tcl 8.5 をアクティブ状態からインストールしました。

ここで、Tkinter テストに進みます。

Tkinter._test() トレースバック (最新の呼び出しが最後): ファイル ""、1 行目、ファイル "/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/lib-tk/Tkinter.py" 内、3746 行目、_test root = Tk() ファイル "/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/lib-tk/Tkinter.py"、1645 行目、init self._loadtk( ) ファイル "/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/lib-tk/Tkinter.py"、1659 行目、_loadtk % (_tkinter.TK_VERSION, tk_version) で RuntimeError: tk.h バージョン(8.4) libtk.a のバージョン (8.5) と一致しません

私がここで説明している正確なエラーについてあなたが議論したことを認識しています: http://bugs.python.org/issue4017

しかし、これらのエラーは、setup.py が検索する順序を逆にした、以前のバージョンの Python の問題から発生しました。以前の投稿でのアドバイスは、setup.py でこの順序を修正して python を再構築することですが、私の setup.py はすでに見栄えがよく、次の行が含まれています。

def detect_tkinter_darwin(self, inc_dirs, lib_dirs): # フレームワークを使用する _tkinter モジュール。# フレームワークはまったく異なるため、UNIX の検索ロジックは共有できません。from os.path import join, exists framework_dirs = [ '/Library/Frameworks', '/System/Library/Frameworks/', join(os.getenv('HOME'), '/Library/Frameworks')

これを処理する方法についての洞察を本当に感謝します!(私は生物学者です...)

私がそれに取り組んでいる間、m matplotlib をインストールしようとしたときに何が起こっているのかを含めます。m matplotlib が役立つ場合に備えて... matplotlib は、私が Tkinter 8.4 を持っていると考えています (皮肉なことに、8.5 をインストールした後、それ以前は常にTkinter を見つけることができませんでした):

Tkinter: Tkinter: 65971、Tk: 8.4、Tcl: 8.4

また、matplotlib をビルドしようとしたときに発生するエラーは次のとおりです。

powerpc-apple-darwin8-g++-4.0.1: 認識されないオプション '-syslibroot,/Developer/SDKs/MacOSX10.4u.sdk' i686-apple-darwin8-g++-4.0.1: 認識されないオプション '-syslibroot,/Developer/ SDKs/MacOSX10.4u.sdk' /usr/bin/ld: -syslibroot: 複数指定 collect2: ld が 1 終了ステータスを返しました /usr/bin/ld: -syslibroot: 複数指定 collect2: ld が 1 終了ステータスを返しました lipo: can' t 入力ファイルを開く: /var/tmp//ccrblCgU.out (そのようなファイルまたはディレクトリはありません) エラー: コマンド 'g++' が終了ステータス 1 で失敗しました make: *** [mpl_build] エラー 1

ありがとうございました!!

カトリーヌ

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

tcl - Tcl/Tk入力フィールドに大文字を強制的に入力する

大文字の入力を強制したい入力ボックスのあるTcl/Tkウィンドウがあります。つまり、文字を入力する場合は、単に小文字の入力を拒否するのではなく、入力フィールドに大文字で表示するようにします。

Tcl / Tk wikiのエントリのドキュメントとエントリ検証ページを見てきましたが検証の例はたくさんありますが、フィルタリングキーの例が見つからないため、正しい場所を探している必要はありません。大文字と小文字を変更するための入力。

私が得ることができた最も近いものは次のようなものです:

これにより、入力された最初の文字は強制的に大文字になりますが、後続の文字は変換されません。実際、検証スクリプトは最初の文字の後にまったく呼び出されません。テスト用のコマンドを省略する.message insertと、文字ごとに検証スクリプトが呼び出されます。

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

python - Tkinter は学ぶ価値がありますか?

私は通常、デスクトップ インターフェースをQtで作成していますが、最近の TK のスクリーンショットを見ると、Tk は単なる醜いモチーフではないことがわかります。さらに、 Tkinterには Python がバンドルされているため、配布が容易になります。

それで、それは学ぶ価値がありますか、それともQtを使い続ける必要がありますか?

tk インターフェースの例
(出典: kb-creative.net )

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

tk - DDD と Insight の Motif テーマをより快適なものに変更するにはどうすればよいですか?

Tk バージョン 8.5.3 がインストールされており、8.5 以降にテーマ エンジンのサポートが追加されています。それでも、テーマの使い方がわかりません。デフォルトの Motif は醜いだけです。

スクリーンショット

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

fonts - ttk::button (テーマウィジェット) でフォントとフォントサイズを変更するには?

テーマ ボタン ウィジェット ( ) のフォントとフォント サイズを変更するにはどうすればよいですttk::buttonか?