Hi!
I’m trying to draw points on a TCanvas with the mouse. The problem is that it seems impossible to take points on a frame… How should i do ? When the cursor is over the frame, nothing happens, i can’t see the status of the mouse…
Here is the concerned part of my program :
class Fenetre: public TCanvas
{
public:Fenetre::Fenetre(Text_t* name, Text_t* title, Int_t posx,Int_t posy, Int_t ww, Int_t wh):TCanvas(name,title,posx,posy,ww,wh)
{ }
//---- Function which is called if the mouse is moving ------
void Fenetre::ExecuteEvent(Int_t event, Int_t px, Int_t py)
{
//-- show mouse status --------
cout<<" position: px="<<px<<" py="<<py<<" code du bouton="<<event<<endl;
//-- convert pixel position into coordinates ------
double x,y;
AbsPixeltoXY(px,py,x,y);
//-- show coordinates of the selected point ---
if(event==1)
{
cout<<"x="<<x<<", y="<<y<<endl;
}
}
};
/***************************************************************/
/******** fonction principale ********/
/***************************************************************/
int main(int argc, char** argv) {
TApplication theApp("App",&argc,argv);
gROOT->Reset();
TCanvas *c1=new Fenetre ("c1","Modélisation...",0,0,600,400);
int n=2;
double x1=-n,x2=n,y1=-n,y2=n;
c1->DrawFrame(x1,y1,x2,y2,"titre");
theApp.Run();
return 0;
}
Thanks.