My guest machine was Windows, but since the problem turned out to be with VirtualBox (6.1), this may still be relevant.
Even though I had the following:
- Guest Additions installed
- VirtualBox Manager → virtual machine → Settings → Display → Screen → Graphics Controller set to
VBoxSVGA
- VM window → View → Auto-resize Guest Display turned on
… it still didn't work for me. I wasn't even able to select any of the standard screen sizes for my virtual screen.
The solution I found was to shut down my VM, quit the VirtualBox Manager, and type the following from the command line:
VBoxManage setextradata "Windows 10" GUI/LastGuestSizeHint 3840,2160
You'll need to replace 'Windows 10' with the name of your virtual machine, and the last parameter should match the resolution of your monitor.
I was running VirtualBox under Linux, but it seems there's such a thing as VBoxManage.exe for Windows, so it should exist for you. You may need to escape the spaces differently in DOS, though, and maybe the slash as well… it's been a long time since I've dealt with DOS.