使用 C# 自訂 Windows 應用程式中的選單懸停顏色
修改 Windows 窗體應用程式中選單項目的懸停顏色是一項頻繁的設計調整。 C# 提供了一種簡單的方法來透過重寫 MenuStrip
類別的渲染器來實現此目的。
C# 程式碼實作:
以下 C# 程式碼示範如何變更懸停顏色:
<code class="language-csharp">public partial class Form1 : Form { public Form1() { InitializeComponent(); menuStrip1.Renderer = new CustomMenuRenderer(); } private class CustomMenuRenderer : ToolStripProfessionalRenderer { public CustomMenuRenderer() : base(new CustomColorTable()) { } } private class CustomColorTable : ProfessionalColorTable { public override Color MenuItemSelected { get { return Color.Yellow; } } public override Color MenuItemSelectedGradientBegin { get { return Color.Orange; } } public override Color MenuItemSelectedGradientEnd { get { return Color.Yellow; } } } }</code>
替代方案:Windows API (DllImport)
雖然不太常見,但您也可以透過 DllImport
使用 Windows API 來控制選單懸停顏色。這種方法一般比較複雜,需要對Windows API有較強的掌握。
修改渲染器屬性:
兩種方法都允許透過重寫 ProfessionalColorTable
類別中的屬性來進行自訂。 您可以定義各種顏色屬性,包括MenuItemSelected
、MenuItemSelectedGradientBegin
和MenuItemSelectedGradientEnd
,以實現您喜歡的懸停效果。
以上是如何使用 C# 更改 Windows 應用程式中的選單懸停顏色?的詳細內容。更多資訊請關注PHP中文網其他相關文章!