Delphi XE2: Invisible Firemonkey controls in VirtualBox
I am running a Win7 x64 Pro inside VirtualBox with 2d and 3d acceleration enabled, but most Controls (TButton, TStringGrid, TTabControl, etc.) are invisible inside Delphi. If I run the executable, all controls are rendered fine. How can I make the Controls visible inside Delphi?
It's a freshly installed Delphi XE2 w/ Update 3
To illustrate the problem I made 2 screenshots:
Inside Delphi IDE
Executable
Edit: VirtualBox version is 4.1.8 r75467
The problem is that Firemonkey (under Windows) uses DirectX to draw its controls.
(Under OSX/iOS it uses OpenGL)
Prior to Version 3 DirectX is not supported in VirtualBox, for that reason you are not seeing the Firemonkey controls.
However the good news is that VirtualBox 3.0 (and up) does support DirectX , see: http://www.dedoimedo.com/computers/virtualbox-3-directx.html
This does require that you install DirectX drivers in your VirtualBox, see the article.
Install Guest Additions from Safe-Mode (remembering to select DirectX support when prompted). Make sure you are running a relatively-recent (4 or newer) version of VirtualBox.
Install all Windows Updates (as it's very possible one of these updates addresses certain VM-related issues for Windows 7).
This is all I have done, and FireMonkey works perfectly for me both at design-time and run-time!
If you do all this and still the controls are invisible at design-time... I strongly suggest reinstalling Delphi as I know others whom have had the same issue, and a reinstall has resolved it for them.
链接地址: http://www.djcxy.com/p/57106.html上一篇: 调换一个1维数组,不代表正方形