Tôi đang làm việc trên Windows Deskband trong Delphi XE2 cho Windows XP, Vista và 7 (Win32 và Win64) ...Làm thế nào để thực hiện (Taskbar Toolbar) Mẫu Deskband tôi trong suốt
tôi đã thực hiện tất cả các các giao diện cần thiết (ITrayDeskBand, IDeskBandInfo, IDeskBand2, IDeskBand) trong mã của tôi và tất cả hoạt động chính xác như nó cần (không có cảnh báo trên Vista/7 phàn nàn về khả năng tương thích như những người khác đã gặp phải).
Vấn đề tôi gặp phải là Biểu mẫu băng thông của tôi xuất hiện với một dải không trong suốt. Ngoài ra, chỉ một số Điều khiển nhất định được hiển thị (trong trường hợp này là TBitBtn và TImage chứa PNG). Tôi cần nó để hiển thị TEdit và TComboBox đối tượng đúng cách quá, nhưng họ sẽ không xuất hiện ở tất cả.
Tôi đã thử bật các thuộc tính GlassFrame
và SheetOfGlass
trên Biểu mẫu của tôi, nhưng điều này không giúp ích một chút.
Hơn nữa, biểu mẫu vượt quá ranh giới trên cùng của thanh tác vụ, nghĩa là bạn không thể thay đổi kích thước thanh tác vụ nếu con trỏ ở trên cùng với thanh tác vụ ngay phía trên Deskband của tôi.
Tôi tin rằng có một cái gì đó của Delphi VCL TForm loại đang làm đằng sau hậu trường mà làm cho loại TForm không tương thích như một container Deskband ... nhưng đây chỉ là một sự nghi ngờ.
Dưới đây là một ảnh chụp màn hình minh họa vấn đề khác nhau:
Như bạn có thể nhìn thấy (ở trên), Mẫu của Deskband là nhạt (thay vì trong suốt), nó chồng lên phía trên cùng của Taskbar (ngăn chặn thay đổi kích thước và Tự động ẩn kích hoạt khi Thanh tác vụ bị "ẩn")
Bất kỳ ý tưởng nào?
UPDATE 1 Được rồi, tôi đã được chơi xung quanh và nhận thấy rằng một hành vi hoàn toàn khác nhau được quan sát thấy khi tạo một điều khiển TToolBar được sử dụng cho các Deskband, chứ không phải là một hình thức:
Thông báo có ba điều khiển TToolButton
(với văn bản của chúng hầu như vô hình do chủ đề Kính)? Cũng cần có một số TEdit
và TComboBox
giữa hai dấu tách, nhưng những từ chối này sẽ hiển thị.
Bạn cũng chú ý đến việc tạo tác phẩm (sự lặp lại của các biểu tượng trên thanh tác vụ thực tế)?
Tôi không chắc đây có phải là một bước đi đúng hướng hay không, nhưng nó có thể giúp bạn (hoặc những người khác) suy ra một giải pháp!
Bạn đã thử sử dụng thuộc tính 'AlphaBlend' của biểu mẫu chưa? – Pateman
Có ... hoàn toàn không có kết quả! Có vẻ như tài sản duy nhất tạo nên bất kỳ sự khác biệt nào là GlassFrame/SheetOfGlass ... nhưng điều đó chỉ đưa tôi đến điểm được hiển thị trong pic! – LaKraven
Bạn đã thử kết hợp 'GlassFrame' với' AlphaBlend' chưa? :) – Pateman