rene Scholte wrote: > > Hello ROOTers, > > I've made a very simple controlbar with one button which calls a very > simple macro when you press it . > this is the controlbar-macro : > > { > gROOT->LoadMacro("exp.c"); > bar = new TControlBar("vertical", "Demos"); > > bar->AddButton("exp",".x exp.c","alkjdsn"); > bar->Show(); > gROOT->SaveContext(); > } > > and this is exp.c : > > { #include <iostream.h> > > gROOT.Reset(); > Int_t nr; > Int_t nrb; > Int_t nrc; > cout << "give a number : "; > cin >> nr; > cout << "number 1 is : " << nr << endl; > cout << "give another number : "; > cin >> nrb; > cout << "number 2 is : " << nrb << endl; > } > > There is a problem. If a run the macro from the controlbar the second > number isn't stored right. If I run exp.c from the command line, everything > works fine. > What am i missing here ? > > output from ROOT : > > root [0] .x barexp.c > root [1] Warning: File "iostream.h" already loaded > give a number : 34 > number 1 is : 34 > give another number : 45 > number 2 is : 5 > > (int)4 > root [2] Warning: File "iostream.h" already loaded > give a number : 345 > number 1 is : 345 > give another number : 346 > number 2 is : 46 > > (int)3 > root [3] .x exp.c > Warning: File "iostream.h" already loaded > give a number : 345 > number 1 is : 345 > give another number : 346 > number 2 is : 346 > root [4] > > at root[1] and root[2] I execute exp.c from the controlbar, at root[3] I > execute exp.c from the command line. Sorry, I lost this mail two weeks ago. I cannot reproduce your problem (apparently due to cout!!). However, I am running with root 2.00/04 and something was fixed by Masa in cout in this release. Rene Brun
This archive was generated by hypermail 2b29 : Tue Jan 04 2000 - 00:34:32 MET