Each control has its application.
The slider is best when the user can graphically see the result of their input in real time. This can include:
Move to around some reference marks on the slider (e.g., just a little below Overcrop).
Move in reference to another slider’s position (e.g., plant as many in the current fields as in another field).
Adjust visual effect on an image or data in a separate pane (e.g., picture contrast or font size).
Adjust aural effects (e.g., volume of sound).
They are also good for reading the relative value at a glance –the slide position cues the user whether the setting is a lot, a little, or in between. Approximate comparisons among sliders is also easy.
In any case, use sliders when users aren’t so interested in a number as achieving a certain relative sensory configuration. It implies the user isn’t after an exact value (e.g., they’re not copying a number to three significant figures from another window), but just want something that “looks good.” Trying to slide to a Yeild exactly 1401 is going to be pretty much impossible for a reasonably sized slider control.
I assume one cannot harvest more than one planted, which means the allowed range for Harvested changes depending on the current Planted value. I think it would be confusing to change the value of 10 pixels of movement on the Harvest slider (i.e., dynamically set the far right to equal the current Planted value). This implies that if you use sliders, you should use dual sliders, where a single track has two draggable pointers. The one pointing up is Planted while the one point down is Harvested. Dragging the Planted to less than the Harvested value “catches” the Harvested pointer and drags it down too. The Harvested slider can’t be dragged beyond the Planted, or, alternatively, dragging the Harvested beyond Planted drags the Planted higher too. The latter may be a handy way for experienced users to simultaneously set both Planted and Harvested if usually they're the same value. Proper graphic design of the sliders exploiting a mechanical metaphor (e.g., including a "hook" on the Planted slider that "catches" the Harvested slider) can cue the user of the dependence between the two sliders.
The dependence of Harvested on Planted is harder to handle with the other controls (e.g., implies some ugly error messages for text boxes), so this may be one more reason you may favor sliders.
Sliders should respond to keyboard input (cursor keys), so mouse versus keyboard use should not be an issue.
Text boxes are best when the user needs to read and/or enter a precise absolute amount to multiple places. The fastest and most accurate way for the user to enter 3.141593 is to type “3.141593.” Likewise, if the user needs to distinguish 3.141593 from 3.141594, it’s a lot easier by reading a text box than looking at a slider position. Text boxes are also the most compact control and are especially good when the user is copying and pasting the value from another location.
Text boxes can be slower and less error tolerant since by default they accept unconstrained values. In practice numeric input will have an allowed range (as you do) and maybe precision (e.g., integers only or no fractions of cents). And, of course, you need to handle input of letters in an effective manner. Text boxes require keyboard input (unless the user is pasting), so you may need to consider mouse-to-keyboard transitions when comparing input efficiency.
Spinners are best when the user generally needs to make small adjustments to the current or default inputs (i.e., make a few clicks up or down). For example, if your Harvested value defaults to your entered Planted value, and generally Harvest is equal to or an acre or two less than Planted, then spinners would work well --it's easier to make a couple clicks than change a 38 to a 36. For large jumps, spinners can get tedious, like setting the alarm on your digital clock.
Spinners can be a problem when precise values are needed because either that means a lot of clicking (if your increment is too small) or the user can’t enter a value smaller than an increment (if your increment is too large). You could put in dual spinner buttons, one for fine adjustment and one for coarse. If you have trained users, you could also put in expert short cuts, like use Ctrl-click of the button to increment a large amount, or (usually better) jump to the extreme amount.
Like sliders, spinners should respond the cursor keys, so mouse versus keyboard use should not be an issue.
Of course, you can use different controls for different fields. Maybe Planted and Harvested should be sliders, while Yield is a text box, depending on how they match up to the conditions above. You don’t have to worry about consistency in this regard.
You can also combined the controls for a single field if more than one of the above conditions apply either to different users or different tasks or times. It’s typical for spinners to also be editable text boxes so users have the choice of clicking a button or typing in a value. A slider can likewise show the current numeric value in an editable text box. When the user types a value, the slider jumps to the correct position in real time. Add left and right arrow buttons to each side of the slider, and now it has spinner functionality, letting the user make a fine adjustment with one click, rather than trying to drag the slider one pixel, which is a lot harder. User testing is likely necessary to see how effectively your users can choose the right input mode for combined controls.
The usual platform style guides (e.g., Windows 7) provide detailed advice on choosing a control.