I Looked in somewhat all the Topic's about creating a Download-button but it still is not clear to me. Do you have a clear example where a user can press a Download button and the file is downloaded. The filename and path can be in the record which the user is looking at.
What are you trying to download?
Is the file accessible from webroot, a file stored in the database, a file secured based on logged-in user/roles, etc?
The link component is the simplest method if you don't require authorization and you might be able to style it as a button. I have also used a link component in conjunction with an external fileserver and encrypted parameters.
There are a few examples in the forum e.g Download documents from the Filesystem webserver