BUG: Let `melt` name multiple variable columns for labels from a `MultiIndex`
- [x] closes #58033
- [x] [Tests added and passed](https://pandas.pydata.org/pandas-docs/dev/development/contributing_codebase.html#writing-tests) if fixing a bug or adding a new feature
- [x] All [code checks passed](https://pandas.pydata.org/pandas-docs/dev/development/contributing_codebase.html#pre-commit).
- [ ] Added [type annotations](https://pandas.pydata.org/pandas-docs/dev/development/contributing_codebase.html#type-hints) to new arguments/methods/functions.
- [x] Added an entry in the latest `doc/source/whatsnew/v2.2.2.rst` file if fixing a bug or adding a new feature.

If there are fewer names provided in `var_name` than levels in the columns `MultiIndex`, then `melt` will just take the first several. I personally find this a bit strange, but it keeps with the previous behavior of `melt` with a `MultiIndex` where you could pass it a single name and it would only use one level of the `MultiIndex`.
Thanks for the PR! Sorry this hasn't been reviewed yet.
Generally LGTM. cc @mroeschke  This pull request is stale because it has been open for thirty days with no activity. Please [update](https://pandas.pydata.org/pandas-docs/stable/development/contributing.html#updating-your-pull-request) and respond to this comment if you're still interested in working on this. Hi! Just checking in as this issue has been affecting my code. I wondered if anything needed to be done or if this will be merged in a later release? Thanks @rob-sil  Thanks for moving this forward! my code works in jupyter notebook with 'var_names' parameter but not in py file, it gives the same error when running in py file. Interesting.