Indeed any power supply unit that happens to be programmable is likely to address your requirements. On the other hand, they are fairly simple and easy to implement¹... except the control / graphical interface, which is non trivial. Other than that you might even build your own implementation with an Arduino, if a quick-n-dirty™ DIY circuit fits your needs. In that case, you can even use a laptop to provide the user interface.
See "voltage-controlled current sources", for instance. You'll come across many examples that use an operational amplifier and a MOSFET. Low-side and high-side variations are all possible.