I'm not familiar with Teechart. Maybe it will handle mouse input. If not, add a MouseMotionListener to the component that's displaying the graph, and implement the mouseDragged method. The MouseEvent parameter has methods to tell you where the event occurred. Use that to decide whether to update the graph, and by how much, and call the appropriate Teechart methods. You might also want to add a MouseListener and implement mousePressed and mouseReleased. The sequence of events should be Pressed, Dragged, possibly more drags, Released.