単純な入力で新しいウィンドウを表示し、1行のテキストを置いて、OKボタンを押して変数の値を設定したい。私は単純なエントリコマンドを使用すると、私のメインウィンドウに表示されます。私はtk_dialogのようなものが必要です。テキストを変数に代入するオプションがあります。定義済みのtk_ *関数はありますか?新しいウィンドウで開く
1
A
答えて
0
あなたはTkのトップレベルのコマンドを使用して別のウィンドウを作成する必要が
% set top [toplevel .top]
.top
% focus $top
% grab $top
% set entryBox [entry $top.ent -textvariable x]
.top.ent
% pack $entryBox
% set btn [button $top.btn -text "Click Me"]
.top.btn
% pack $btn
0
この手順:
proc entrybox varName {
set top [toplevel .top[clock seconds]]
entry $top.eb -textvariable $varName
button $top.bu -command [list incr ${top}done] -text OK
pack {*}[winfo children $top]
vwait ::${top}done
unset -nocomplain ::${top}done
destroy $top
}
グローバルまたは完全修飾名を与えられ、エントリとして、新たなトップレベルのダイアログを作成しますボタン。ボタンがクリックされるのを待って、トップレベルのダイアログを破棄します。入力ボックスのテキストは変数に残ります。
ドキュメント: button (widget)、 clock、 destroy、 entry (widget)、 incr、 list、 pack、 proc、 set、 toplevel、 unset、 vwait、 winfo、 {*} (syntax)
関連する問題
- 1. 新しいウィンドウで開くbase64 pdf新しいウィンドウで開くAndroid phonegap
- 2. 新しいウィンドウを開く
- 3. asp.netで新しいウィンドウを開くVB
- 4. Magnolia 5.5.5 - 新しいウィンドウで開くダイアログ
- 5. a4j:commandButtonで新しいウィンドウを開く
- 6. URLを新しいウィンドウで開くJava
- 7. 新しいウィンドウでddメニューを開く
- 8. 新しいウィンドウでリンクを開く
- 9. mvvmcrossで新しいウィンドウを開く
- 10. サブフォームを新しいウィンドウで開く
- 11. 新しいウィンドウでボタンを開く?
- 12. pygameで新しいウィンドウを開く
- 13. 新しいウィンドウでdatagridviewを開く... asp.net
- 14. WinJSユニバーサルアプリケーションで新しいウィンドウを開く
- 15. asp.net新しいウィンドウでハイパーリンクフィールドを開く
- 16. javascript - 新しいウィンドウで開くフレーム
- 17. 新しいウィンドウでSSRS URLを開く
- 18. 新しいタブ/ウィンドウでボタンを開く
- 19. javascript/Jqueryで新しいウィンドウを開く
- 20. asp:Gridviewのハイパーリンクを開く新しいウィンドウでPDFを開く
- 21. 新しいウィンドウで開く開く返信する
- 22. Javaを開く新しいウィンドウで開く
- 23. 新しいページを開く:新しいウィンドウと新しいタブ
- 24. SSRSレポートを開く新しいウィンドウ
- 25. QT:新しいウィンドウを開くには
- 26. GeckoFXブラウザ - 新しいウィンドウを開く
- 27. jQuery - ページの新しいウィンドウを開く
- 28. ActionColumnの新しいウィンドウを開くYii2
- 29. Emacs Lisp - 新しいウィンドウを開く
- 30. コードビハインドから新しいウィンドウを開く
あらかじめ定義されたダイアログはありません。とにかくそれほど多くのコードではないので、とにかく特定のユースケースに特化した特別なカスタマイズを通常必要とするため、誰もこれをやりなおすことはありません。 –