私はtcl/tkスクリプトを実行する初心者です。私のスクリプトでは、開くファイルを選択するためのポップアップウィンドウを作成してから、このファイルパスをソース関数に渡しています。私はこのスクリプトが段階的に実行されることを期待していましたが、代わりにソース関数が実行されてからファイルを選択します。また、vwait関数を使ってみました。残念ながら、それは1回目の実行では実行されていません。しかし、2回目のスクリプトでは、スクリプトが欲望として働いています。誰も私にこのスクリプトを実行するのを助けることができますか?tcl/tkスクリプトが希望どおりに動作しない
destroy .buttons
toplevel .buttons -width 400 -height 100 -background red -relief ridge -borderwidth 8 -padx 10 -pady 10
wm title .buttons "Select a file containing nodes coordinates"
wm geometry .buttons 350x81
set count 0
proc add_button {title command} {
global count
button .buttons.$count -text $title -command $command
pack .buttons.$count -side top -pady 1 -padx 1 -fill x
incr count
}
set types { {{TCL Scripts} {.tcl}} }
add_button "File name" {set accept_button [tk_getOpenFile -filetypes $types]
\t \t \t \t \t \t \t puts "the path is: $accept_button"
\t \t \t \t \t \t \t
\t \t \t \t \t \t \t destroy .buttons}
add_button "Exit" {destroy .buttons}
#puts above------------------------
#vwait [namespace which -variable accept_button]
#puts below-----------------------
source "$accept_button"
puts "the src is: $accept_button"
エラーが表示されますか? – Adam
@Adamいいえ、実行する予定であるため、スクリプトは実行されていません。最初のスクリプトでファイルを選択するように求められ、ファイルを選択すると、選択したファイルがソースとみなされます。しかし、ここではソースとポップアップウィンドウが同時に実行されています。それは私が望んでいない。 –