Personally, if I'm in a GUI I'd prefer buttons. They both allow one to quickly see whether they are in a transaction or not (by greying out the buttons when their use is not applicable) and provide a mouse user a very quick way to commit/rollback the query they just executed via clicking the "run query" button.
This has absolutely nothing to do with "Auto Commit/Rollback" other than the buttons would only be meaningful when said option is disabled.