A pointing device (10; 110; 200; 210; 220; 400) comprising: a roller assembly, the roller assembly comprising: a central housing (12; 412) in the form of a hollow tube, the tubular central housing having an aperture in a surface between the ends of said tubular central housing; a sleeve (14; 414) disposed to fit over a portion of said tubular central housing by bushings (18a, 18b), said bushings (18a, 18b) allowing said sleeve to rotate about said portion of said tubular central housing and to slide along a generally horizontal axis about said portion of said tubular central housing; a circuit board contained within said tubular central housing; a sensor (40; 430) disposed on said circuit board within said tubular central housing, said sensor being positioned proximate to and aligned with said aperture, said sleeve positioned surrounding said sensor, and wherein said sensor is capable of detecting rotational movement of said sleeve relative to said tubular central housing and wherein said sensor is capable of detecting axial movement of said sleeve relative to said tubular central housing; and at least one end sensor (418, 450) arranged within said central housing, said end sensor capable of contactless detection of movement of said sleeve beyond a predetermined location on said central housing; a circuit in communication with said sensor (40; 430), said circuit capable of transmitting data to a computer regarding said movement of said sleeve (14; 414); support means (24; 150a, 150b; 202a, 202b; 212a, 212b; 214a, 214b; 222a, 222b; 426, 444, 448, 458) for supporting the roller assembly at the ends of the central housing, the support means allowing downward movement of the roller assembly when a user pushes down on the roller assembly to initiate a click operation; and at least one pick or proximity switch (30a; 158; 224a, 224b; 440) to detect the downward movement of the roller assembly. a roller assembly, the roller assembly comprising: a central housing (12; 412) in the form of a hollow tube, the tubular central housing having an aperture in a surface between the ends of said tubular central housing; a sleeve (14; 414) disposed to fit over a portion of said tubular central housing by bushings (18a, 18b), said bushings (18a, 18b) allowing said sleeve to rotate about said portion of said tubular central housing and to slide along a generally horizontal axis about said portion of said tubular central housing; a circuit board contained within said tubular central housing; a sensor (40; 430) disposed on said circuit board within said tubular central housing, said sensor being positioned proximate to and aligned with said aperture, said sleeve positioned surrounding said sensor, and wherein said sensor is capable of detecting rotational movement of said sleeve relative to said tubular central housing and wherein said sensor is capable of detecting axial movement of said sleeve relative to said tubular central housing; and at least one end sensor (418, 450) arranged within said central housing, said end sensor capable of contactless detection of movement of said sleeve beyond a predetermined location on said central housing; a circuit in communication with said sensor (40; 430), said circuit capable of transmitting data to a computer regarding said movement of said sleeve (14; 414); support means (24; 150a, 150b; 202a, 202b; 212a, 212b; 214a, 214b; 222a, 222b; 426, 444, 448, 458) for supporting the roller assembly at the ends of the central housing, the support means allowing downward movement of the roller assembly when a user pushes down on the roller assembly to initiate a click operation; and at least one pick or proximity switch (30a; 158; 224a, 224b; 440) to detect the downward movement of the roller assembly. a central housing (12; 412) in the form of a hollow tube, the tubular central housing having an aperture in a surface between the ends of said tubular central housing; a sleeve (14; 414) disposed to fit over a portion of said tubular central housing by bushings (18a, 18b), said bushings (18a, 18b) allowing said sleeve to rotate about said portion of said tubular central housing and to slide along a generally horizontal axis about said portion of said tubular central housing; a circuit board contained within said tubular central housing; a sensor (40; 430) disposed on said circuit board within said tubular central housing, said sensor being positioned proximate to and aligned with said aperture, said sleeve positioned surrounding said sensor, and wherein said sensor is capable of detecting rotational movement of said sleeve relative to said tubular central housing and wherein said sensor is capable of detecting axial movement of said sleeve relative to said tubular central housing; and at least one end sensor (418, 450) arranged within said central housing, said end sensor capable of contactless detection of movement of said sleeve beyond a predetermined location on said central housing; a circuit in communication with said sensor (40; 430), said circuit capable of transmitting data to a computer regarding said movement of said sleeve (14; 414); support means (24; 150a, 150b; 202a, 202b; 212a, 212b; 214a, 214b; 222a, 222b; 426, 444, 448, 458) for supporting the roller assembly at the ends of the central housing, the support means allowing downward movement of the roller assembly when a user pushes down on the roller assembly to initiate a click operation; and at least one pick or proximity switch (30a; 158; 224a, 224b; 440) to detect the downward movement of the roller assembly.