Use tkwait.variable(done) to wait until tcl variable done turns non zero. I've changed the lines marked ###. Also see: http://bioinf.wehi.edu.au/~wettenhall/RTclTkExamples/OKCancelDialog.html
function1<-function(){ require(tcltk) tt <- tktoplevel() rb1 <- tkradiobutton(tt) rb2 <- tkradiobutton(tt) rbValue <- tclVar("oranges") tkconfigure(rb1,variable=rbValue,value="apples") tkconfigure(rb2,variable=rbValue,value="oranges") tkgrid(tklabel(tt,text="Which do you prefer?")) tkgrid(tklabel(tt,text="Apples "),rb1) tkgrid(tklabel(tt,text="Oranges "),rb2) value<-0; done <- tclVar(0) ### aux_function<- function() { rbVal <- as.character(tclvalue(rbValue)) # tkdestroy(tt) ### if (rbVal=="apples") tkmessageBox(message="Good choice! An apple a day keeps the doctor away!") if (rbVal=="oranges") tkmessageBox(message="Good choice! Oranges are full of Vitamin C!") tclvalue(done) <- 1 ### print(rbVal); return(rbVal); } OK.but <- tkbutton(tt,text="OK",command=function() aux_function()) #OK.but <- tkbutton(tt,text="OK",command=function() value<<-aux_function()) tkgrid(OK.but) tkfocus(tt) tkwait.variable(done) ### tkdestroy(tt) ### #return(value) } On Wed, Mar 19, 2008 at 7:50 PM, ermimi <[EMAIL PROTECTED]> wrote: > > Hello companions!!! > > I have a function that creates a Radio Buttons, and I need that this > function return the selected value in the Radio Buttons. I would like that, > if somebody know as I could return the value, you say me as do it. > > Next, I show the function > > > function1<-function(){ > require(tcltk) > tt <- tktoplevel() > rb1 <- tkradiobutton(tt) > rb2 <- tkradiobutton(tt) > rbValue <- tclVar("oranges") > tkconfigure(rb1,variable=rbValue,value="apples") > tkconfigure(rb2,variable=rbValue,value="oranges") > tkgrid(tklabel(tt,text="Which do you prefer?")) > tkgrid(tklabel(tt,text="Apples "),rb1) > tkgrid(tklabel(tt,text="Oranges "),rb2) > value<-0; > aux_function<- function() > { > rbVal <- as.character(tclvalue(rbValue)) > tkdestroy(tt) > if (rbVal=="apples") > tkmessageBox(message="Good choice! An apple a day keeps the > doctor > away!") > if (rbVal=="oranges") > tkmessageBox(message="Good choice! Oranges are full of > Vitamin C!") > print(rbVal); > return(rbVal); > } > OK.but <- tkbutton(tt,text="OK",command=function() aux_function()) > #OK.but <- tkbutton(tt,text="OK",command=function() > value<<-aux_function()) > > tkgrid(OK.but) > tkfocus(tt) > #return(value) > } > > > > > Thanks in advance! > A greetings Luismi > -- > View this message in context: > http://www.nabble.com/Radio-Buttons-or-similars-tp16164495p16164495.html > Sent from the R help mailing list archive at Nabble.com. > > ______________________________________________ > R-help@r-project.org mailing list > https://stat.ethz.ch/mailman/listinfo/r-help > PLEASE do read the posting guide http://www.R-project.org/posting-guide.html > and provide commented, minimal, self-contained, reproducible code. > ______________________________________________ R-help@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.