2012-01-05 36 views
7

Tôi đang chạy Win7 x64 Pro bên trong VirtualBox với khả năng tăng tốc 2d và 3d, nhưng hầu hết các Điều khiển (TButton, TStringGrid, TTabControl, vv) đều ẩn trong Delphi. Nếu tôi chạy tệp thực thi, tất cả các điều khiển đều được hiển thị tốt. Làm thế nào tôi có thể làm cho các điều khiển có thể nhìn thấy bên trong Delphi?Delphi XE2: Điều khiển vô hình Firemonkey trong VirtualBox

Đó là một tươi cài đặt Delphi XE2 w/Cập nhật 3

Để minh họa cho vấn đề tôi đã thực hiện 2 ảnh chụp màn hình:

Bên trong Delphi IDE

enter image description here

Executable

enter image description here

Chỉnh sửa: Phiên bản VirtualBox là 4.1.8 r75467

+2

Trông giống như một lỗi. Gửi báo cáo QC. –

+0

lý do bạn không chèn hình ảnh vào câu hỏi? – RBA

+1

@RBA Người dùng đại diện thấp không được phép đưa hình ảnh vào nội tuyến. Tôi đã chỉnh sửa chúng. –

Trả lời

3

Vấn đề là Firemonkey (trong Windows) sử dụng DirectX để vẽ các điều khiển của nó.
(Trong OSX/iOS, nó sử dụng OpenGL)
Trước phiên bản 3 DirectX không được hỗ trợ trong VirtualBox, vì lý do đó bạn không nhìn thấy các điều khiển Firemonkey.

Tuy nhiên, tin tốt là VirtualBox 3.0 (trở lên) không hỗ trợ DirectX, xem: http://www.dedoimedo.com/computers/virtualbox-3-directx.html
này yêu cầu bạn phải cài đặt trình điều khiển DirectX trong VirtualBox bạn, hãy xem bài viết.

+0

Tôi đã cài đặt hỗ trợ Direct3D và DirectX như trong phần mô tả và thậm chí tôi còn có Unreal Tournament để chạy. Tuy nhiên, Delphi vẫn từ chối trả lại các điều khiển trong IDE. – Gloegg

+1

FireMonkey không sử dụng Direct3D (hoặc DirectX của bất kỳ loại nào) tại Design-Time ... nó sử dụng GDI +. Bạn cũng đã bỏ qua khi asnwering rằng DirectX đang làm việc trong máy ảo tại thời gian chạy, nhưng không phải lúc thiết kế thời gian. Điều này cho thấy một lỗi có thể xảy ra. – LaKraven

1

Cài đặt ứng dụng khách bổ sung từ Chế độ an toàn (nhớ chọn hỗ trợ DirectX khi được nhắc). Đảm bảo rằng bạn đang chạy phiên bản VirtualBox tương đối gần đây (4 hoặc mới hơn).

Cài đặt tất cả Bản cập nhật Windows (vì có thể một trong các bản cập nhật này giải quyết một số vấn đề liên quan đến VM nhất định cho Windows 7).

Đây là tất cả những gì tôi đã làm và FireMonkey hoạt động hoàn hảo cho cả tôi ở thời gian thiết kế và thời gian chạy!

Nếu bạn làm tất cả điều này và vẫn điều khiển là vô hình tại thời điểm thiết kế ... Tôi khuyên bạn nên cài đặt lại Delphi như tôi biết những người khác đã gặp sự cố tương tự và cài đặt lại đã giải quyết vấn đề cho họ.

+0

Việc cài đặt lại Delphi là những gì tôi muốn khắc phục bằng cách chuyển sang Máy ảo. Vâng, vì không có gì khác làm việc, tôi sẽ làm điều đó. – Gloegg

+0

Vẻ đẹp, mặc dù, là một khi nó được cài đặt lại ... bạn không cần phải cài đặt lại nó một lần nữa! – LaKraven

Các vấn đề liên quan