簡體   English   中英

表單標題欄多色

[英]Form title bar multicolour

我有一個關於表單外觀的問題。 我想創建一個看起來像一些 macOS 應用程序的應用程序(例如 Bear 甚至 App Store。這些應用程序的特點是左側部分(一種抽屜)是 on1 顏色。我想要我的表格以同樣的方式用 Delphi 創建。我查看了互聯網,並按照建議嘗試使用 VCL 樣式,但是由於運行該應用程序的各種 PC 上的 Windows dpi 設置存在一些問題。所以我想知道是否有辦法實現此任務編碼。在下圖中,您可以看到普通窗口如何在裝有 Windows 10 的 PC 中顯示

在此處輸入圖片說明

這個例子是用一個簡單的形式來打招呼,我把一個畫成藍色的面板。 正如您所看到的,窗口的標題欄是白色的,可以使用 VCL 樣式將其塗上顏色(但在這種情況下,所有標題欄都應為該顏色。我想要的是類似於下圖的內容(在 Photoshop 中創建),我在其中繪制了一條紅線,只是為了突出顯示標題欄:

在此處輸入圖片說明

我試過攔截 WM_NCPAIN 或其他類似的解決方案,但我找不到完成我的任務的方法。 有人可以幫我解決這個問題嗎? 提前謝謝了

愛神

在 Windows Vista 和更高版本中,應用程序窗口的非客戶區域(標題欄、圖標、窗口邊框和標題按鈕)的外觀由 DWM(桌面窗口管理器)控制。 使用 DWM API,您可以更改 DWM 呈現窗口框架的方式。 (引用自MSDN )。

有一篇文章在 Vista/Windows 7 上設置自定義標題欄,解釋了如何使用 Delphi 執行此操作。 這篇文章也適用於 Windows 8.x 和 Windows 10。作者已經寫了很多關於這個主題的文章; 您可以在此處找到概述。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM