問題タブ [tkinter-canvas]

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 に答える
22700 参照

python - Tkinter:キャンバスウィンドウのフレームをキャンバスのサイズに拡大するにはどうすればよいですか?

だから私はtkinterでキャンバスウィジェットを使って、スクロールバーを持つラベルでいっぱいのフレームを作成してきました。フレームがその中に配置されたラベルのサイズにのみ拡大することを除いて、すべてがうまく機能しています-フレームを親キャンバスのサイズに拡大したい.

これは、キャンバスのフレームに pack(expand = True) (以下のコードでコメントアウトしています) を使用すると簡単に実行できますが、スクロールバーが機能しません。

適切なコードは次のとおりです。

また、フレームに色を付けた画像も用意しました。ピンクの領域は、mailbox_frame で塗りつぶす必要があるキャンバスです (右側にスクロールバーが表示されます)。

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

python - Tkinter キャンバスで部分文字列に色を付ける方法

create_text() ループ内で、Tkinter キャンバスのボックスにテキストを表示するプログラムを作成しています。各単語が表示され、次の単語に置き換えられます。フラッシュカードのようなもの。

ユーザーが単語を読んでいるときに目が単語の中央に集中するように、各単語の 1 文字の単語の中央付近に色を付ける必要があります。などif len(i)=1, color i[0], if len(i)>= 2 and <= 5, color i[1]など。キャンバスを使用して行う必要があります。

結果はこのように印刷されるはずです

(ただし、明らかに「m」は大文字ではなく赤になります)

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

python-3.x - _tkinter.TclError:unknown option "23" コードは少数のオブジェクトで機能しますが、多くのオブジェクトでは機能しません

まず始めに、私は Tkinter を使用するのに非常に慣れていません。

私が抱えている問題は、オブジェクト タイプが 1 つしかない場合にコードが機能することです。そのタグ タイプの唯一のタグである場合、正しく相互作用します。したがって、実行するたびに 1 つの「ボート」と 100 の「シェル」がある場合、正しく実行されます。

このコードは、2 つのオブジェクト間に衝突があるかどうかを検出し、現在選択されているアイテムの色をランダムに変更します。そのため、現在タグ タイプが 1 つしかない限り、正しく機能します。「ボート」をクリックして「シェル」にドラッグすると、色が切り替わります。次に、100 個のシェルのうちの 1 つを取得して同じことを行うと、このエラーが発生します。

特定のタイプのオブジェクトが 1 つしかなく、他のオブジェクトが無限にある場合に正しく機能する理由がわかりませんが、タグタイプが複数ある場合は失敗します。

選択したオブジェクトのID番号を正しく選択するので、今迷っており、助けていただければ幸いです。

以下は、受け取ったエラーと使用しているコードです。必要なタスクを実行するために必要な重要な部品です。ただし、衝突コードはコードと同じです。



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

python - Python でこのプログラムにグラフィック インターフェイス (Tkinter) を追加しますか?

Pythonでプログラムを書いたばかりです。プログラムは次のことを行います。

オリジナルというクラスがあります。2 つのメソッドがあります ( initの一部)。最初の方法はコードです。「コード」が行うことは、文字列を受け取り、それをエンコードして、受け取った文字列のすべての文字を ASCII テーブルの別の文字に変更することです。この ASCII 文字は、generacion_clave 関数に依存します。関数generacion_claveは、1からkの間の数をランダムに生成します(kはこの関数の入力パラメータです)。

たとえば、文字「e」は ASCII テーブルの 101 の場所にあります。したがって、生成された数値が 8 の場合、文字 e は、位置 109 (101 + 8) を持つ ASCII テーブル内の文字に変更されます。

メソッド decode は、エンコードされた文字列と clave を受け取り、デコードされた文字列を返します。

私がやりたいことは、以下を含むグラフィック インターフェイスをプログラムに追加することです。

元の文字列の入力ボックス、エンコードおよびデコードされた文字列が表示されるキャンバス (または出力ボックス?)、エンコードするボタンとデコードするボタン。

私は Python の初心者です。Tkinter に関するチュートリアルをいくつか読みましたが、まったく簡単ではありません。だから私はどんな助けにも感謝します:)

よろしくお願いします!パブロ