宣言時のボタン パラメーター "コマンド" の実行: 解決済み
tkinter では、ボタン ウィジェットの "command" パラメーターは、ボタンがオンになったときにコールバックを実行することを目的としています。押した。ただし、ボタンをクリックしたときではなく、コールバック関数が宣言と同時に実行される理由は不可解です。
鍵は、インスタンス作成時のパラメータの評価にあります。関数を「コマンド」パラメーターとして渡す場合、Python は最初に関数を評価し、括弧内に渡された引数を使用してその関数を呼び出します。たとえば、次のコードでは:
<code class="python">def Hello(): print("Hi there!") hi = Button(frame, text="Hello", command=Hello())</code>
このコードは Hello 関数を呼び出し、return ステートメントがないため None 値を返し、この None 値を「command」パラメータとしてボタン。その結果、ボタンがクリックされたときにコールバックは実行されず、初期評価では「こんにちは!」が出力されます。
この問題を修正し、ボタンがクリックされたときにのみコールバックが実行されるようにするには、次の関数を渡します。
<code class="python">hi = Button(frame, text="Hello", command=Hello)</code>
この変更により、Hello 関数が呼び出し可能オブジェクトとして保存され、ボタンのクリック時に呼び出されます。
関数オブジェクトとその戻り値の基本的な違いを理解するこの文脈では重要です。関数オブジェクトは function_name によって参照され、 function_name() は戻り値を表します。前者は呼び出し可能ですが、後者は関数を呼び出した結果です。
本質的に、ボタンの「コマンド」パラメータを定義するときは、時期尚早を避けるために、戻り値ではなく関数オブジェクトを渡すことが不可欠です。実行。この区別により、ボタンクリック時のシームレスなコールバック機能への道が開かれます。
以上がTkinter ボタンの「Command」パラメータが宣言時に実行されるのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

限られた時間でPythonの学習効率を最大化するには、PythonのDateTime、時間、およびスケジュールモジュールを使用できます。 1. DateTimeモジュールは、学習時間を記録および計画するために使用されます。 2。時間モジュールは、勉強と休息の時間を設定するのに役立ちます。 3.スケジュールモジュールは、毎週の学習タスクを自動的に配置します。

PythonはゲームとGUI開発に優れています。 1)ゲーム開発は、2Dゲームの作成に適した図面、オーディオ、その他の機能を提供し、Pygameを使用します。 2)GUI開発は、TKINTERまたはPYQTを選択できます。 TKINTERはシンプルで使いやすく、PYQTは豊富な機能を備えており、専門能力開発に適しています。

Pythonは、データサイエンス、Web開発、自動化タスクに適していますが、Cはシステムプログラミング、ゲーム開発、組み込みシステムに適しています。 Pythonは、そのシンプルさと強力なエコシステムで知られていますが、Cは高性能および基礎となる制御機能で知られています。

2時間以内にPythonの基本的なプログラミングの概念とスキルを学ぶことができます。 1.変数とデータ型、2。マスターコントロールフロー(条件付きステートメントとループ)、3。機能の定義と使用を理解する4。

Pythonは、Web開発、データサイエンス、機械学習、自動化、スクリプトの分野で広く使用されています。 1)Web開発では、DjangoおよびFlask Frameworksが開発プロセスを簡素化します。 2)データサイエンスと機械学習の分野では、Numpy、Pandas、Scikit-Learn、Tensorflowライブラリが強力なサポートを提供します。 3)自動化とスクリプトの観点から、Pythonは自動テストやシステム管理などのタスクに適しています。

2時間以内にPythonの基本を学ぶことができます。 1。変数とデータ型を学習します。2。ステートメントやループの場合などのマスター制御構造、3。関数の定義と使用を理解します。これらは、簡単なPythonプログラムの作成を開始するのに役立ちます。

10時間以内にコンピューター初心者プログラミングの基本を教える方法は?コンピューター初心者にプログラミングの知識を教えるのに10時間しかない場合、何を教えることを選びますか...

fiddlereveryversings for the-middleの測定値を使用するときに検出されないようにする方法


ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

SecLists
SecLists は、セキュリティ テスターの究極の相棒です。これは、セキュリティ評価中に頻繁に使用されるさまざまな種類のリストを 1 か所にまとめたものです。 SecLists は、セキュリティ テスターが必要とする可能性のあるすべてのリストを便利に提供することで、セキュリティ テストをより効率的かつ生産的にするのに役立ちます。リストの種類には、ユーザー名、パスワード、URL、ファジング ペイロード、機密データ パターン、Web シェルなどが含まれます。テスターはこのリポジトリを新しいテスト マシンにプルするだけで、必要なあらゆる種類のリストにアクセスできるようになります。

ZendStudio 13.5.1 Mac
強力な PHP 統合開発環境

AtomエディタMac版ダウンロード
最も人気のあるオープンソースエディター

PhpStorm Mac バージョン
最新(2018.2.1)のプロフェッショナル向けPHP統合開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)
