回答編集履歴
1
表現を修正
test
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
`command`には、「メニューを選択したときに実行したい関数そのもの」を設定します。つまり、`menub_open`のように`()`を付けないで書いてください。
|
1
|
+
そこのオプション引数`command`には、「**メニューを選択したときに実行したい関数そのもの**」を設定します。つまり、`menub_open`のように、関数名だけを`()`を付けないで書いてください。
|
2
2
|
|
3
3
|
|
4
4
|
|
@@ -16,10 +16,10 @@
|
|
16
16
|
|
17
17
|
|
18
18
|
|
19
|
-
Pythonでは、関数名の後に`()`を付けると、「その関数を呼び出す(実行する)」という処理が行なわれます。ですから、メニューを選択したときではなく、関数を登録するときに`menub_open`が実行され、「menubar open!」が表示されます。
|
19
|
+
Pythonでは、関数名の後に`()`を付けると、「**その関数を呼び出す(実行する)**」という処理が行なわれます。ですから、質問者のコードでは、メニューを選択したときではなく、メニューに関数を登録するときに`menub_open`が実行され、「menubar open!」が表示されます。
|
20
20
|
|
21
21
|
|
22
22
|
|
23
23
|
---
|
24
24
|
|
25
|
-
なお、これは「`command`に関数呼び出しを書いてはいけない」ということではありません。「関数を返り値として返す関数」を呼び出したり、同等の処理を行なうラムダ式を書くことはよくあります。
|
25
|
+
なお、これは「`command`に関数呼び出しを書いてはいけない」ということではありません。「関数を返り値として返す関数」を呼び出したり、同等の処理を行なう「ラムダ式」を書くことはよくあります。
|