If a text is too big for the screen then the user wants a scroll function so that they can choose which part of the text to see.
There are several ways to do this:
Scrollbar. This is a graphical interface that the user can move with the mouse, as shown to the right. There may be one scrollbar on the right edge of the window for vertical scrolling, and another scrollbar on the lower edge of the window for horizontal scrolling. The user can click on the arrow icons to scroll one unit up or down. The user can click on the shaded field to scroll a half or a full page up or down. And the user can drag the square button up and down to position the page exactly where they want it.
Simple observations show that many users use the most tedious of all methods: clicking the arrow keys repeatedly until the page is positioned as desired.
Many computer mice have a thumb wheel that you can use for vertical scrolling. This is useful for situations where you use the mouse anyway, such as Internet surfing. The scroll wheel is most useful for scrolling small distances. It is not suited for scrolling several pages down. A feature that also allowed horizontal scrolling would be useful, for example a second wheel, a ball or a touch pad.
Keyboard. If the user's hands are on the keyboard, then it is certainly most practical to use the keyboard for scrolling. Many systems only have a PageUp and a PageDown key for scrolling a whole page or frame up and down. It is absolutely incomprehensible to me why not all systems also have keys for scrolling a single unit (one line or character) up, down, left, and right, as these operations are needed all the time. This could easily be implemented in existing systems by using key combinations such as Alt+Arrowkey. Without scroll keys the user has to use the arrow keys to move the cursor beyond the edge of the screen window, or use the mouse. (Historical note: The ScrollLock key that most PC's have was originally intended for turning the arrow keys into a scroll mode. Because of the usability problems with modes, this key has almost never been used. If it had been designed as a shift key rather than a mode key, then it would be used by everybody today!)
Touch screen. Devices with a touch screen can scroll the text vertically and horizontally by moving one or two fingers across the screen.
What is up and down?Edit
What does it mean to scroll up? You have probably never thought of this as a problem, but there are actually two opposite metaphors:
- To scroll up means to move the text up relative to the viewing window, so that the text further down becomes visible.
- To scroll up means to move the viewing window up relative to the text, so that the text further up becomes visible.
Usability experiments on devices with keyboard and mouse have shown clearly that the second metaphor is most user-friendly. Pressing or clicking an up button or moving a scrollbar or scroll wheel up should actually move the text down relative to the viewing window, so that the text further up becomes visible. The reason why the second concept is the most intuitive is that it is consistent with the arrow keys moving the cursor. Moving the cursor up means pointing at previous text. If this text is not already visible then the text is scrolled to make it visible.
Unfortunately, small devices with a touch screen tend to prefer the first metaphor. Such devices typically allow the user to move and manipulate objects on the screen and to zoom in and out by finger movements on the screen. This implies moving screen objects relative to the viewing window, in accordance with the first metaphor.
This gives rise to a serious dilemma on devices that have both a touch screen and a keyboard, and possibly also a scroll bar or scroll wheel. Users who are used to manipulating objects on the touch screen expect the first metaphor, while users who prefer to use keyboard, scroll bar or scroll wheel expect the second metaphor. The two conflicting ways of scrolling are causing confusion and frustration, and some users have been observed to change the settings for e.g. the scroll wheel in an attempt to make the behavior consistent. This obviously gives problems when the same device is used by multiple users or when the same person is using both types of devices.
I have not yet seen a satisfactory solution to this dilemma.