gWidgets-Rにハンドラーがあり、データは次の場所に読み込まれます。
handler=function(h,...){
fname <- gfile(text="Choose a file",
type="open",
action="print",
handler =
function(h,...){
do.call(h$action, list(h$file))
}
)
load(fname)
.GlobalEnv$SETTINGS <- setwrite
svalue(status_bar) <- "Settings Loaded"
})
関数が終了した後もロードされたものを引き続き使用できるようにするために、最後にGlobalEnvに入力します。そうでない場合、ハンドラー関数が終了すると、作成された「setwrite」オブジェクトはハンドラーが終了すると破棄され、関数が破棄されます。終わらせる。ただし、ユーザーはオブジェクトを必要としないため、これは実際には望ましい結果ではありませんが、パッケージ内の他の関数(エクスポートされていない)はこのオブジェクトを使用する必要があります。私がする必要があるのは、「setwrite」変数をそれらの関数のスコープのどこかに置くことだと思いましpackage:pkgnamehere$SETTINGS <- setwrite
た。.GlobalEnv$SETTINGS <- setwrite
行はですが、オブジェクトパッケージが見つからないことを示しています。ハンドラーによって作成され、パッケージの非公開関数/その他のgWidgetsイベントハンドラーのスコープにオブジェクトを配置するために、これを正しく行うにはどうすればよいですか。(ユーザーはGUIを使用できるようにする必要があるという考えであるため、エクスポートされません)。ありがとう。