我们如何在单击菜单栏项时突出显示活动菜单项?

就是这个

我正在使用C#WinForms开发桌面应用程序。我已经使用menustrip在不同的面板之间导航。我面临的问题是我无法突出显示菜单条图标的活动颜色。图片说明将更好地解释我想要达到的目标。

这是我的菜单条

在此处输入图片说明

然后单击MenuStripItem我要实现这一目标

在此处输入图片说明

简而言之,我希望菜单栏项在单击时保持突出显示,就像图片中的“搜索并编辑”一样,然后如果我单击“新客户”,则必须将其突出显示为“搜索并编辑”

雷扎·阿盖伊(Reza Aghaei)

您可以ToolStrip改为使用并将itemsChecked属性设置为true。为此,您可以通过以下方式处理ItemClicked事件ToolStrip并检查项目:

private void toolStrip1_ItemClicked(object sender, ToolStripItemClickedEventArgs e)
{
    foreach (ToolStripButton item in ((ToolStrip)sender).Items)
    {
        if (item != e.ClickedItem)
            item.Checked = false;
        else
            item.Checked = true;
    }
}

这样,它会在选中的项目周围显示边框。如果出于某种原因您对外观不满意,则可以通过创建自定义渲染器并将其分配为ToolStrip这种方式的渲染器来简单地自定义已检查项目的外观

public class MyRenderer : ToolStripProfessionalRenderer
{
    public MyRenderer() : base(new MyColorTable())
    {
    }
}

public class MyColorTable : ProfessionalColorTable
{
    public override Color ButtonCheckedGradientBegin
    {
        get { return ButtonPressedGradientBegin; }
    }
    public override Color ButtonCheckedGradientEnd
    {
        get { return ButtonPressedGradientEnd; }
    }
    public override Color ButtonCheckedGradientMiddle
    {
        get { return ButtonPressedGradientMiddle; }
    }
}

Load在初始化组件后以这种方式在表单的构造函数中分配渲染器

toolStrip1.Renderer = new MyRenderer();

这样,它将选中的项目显示为突出显示。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何突出显示活动菜单项?

尝试突出显示活动菜单项

菜单栏中未显示的菜单项

如何在AppleScript中向菜单栏应用(不包含菜单栏菜单项)发送命令?

我可以禁用菜单栏上的菜单项和/或动态显示它吗?

如何突出显示当前菜单项?

如何在菜单项上悬停时显示子菜单项

jQuery保持活动菜单项突出显示

突出显示UL LI活动菜单项

使用jQuery突出显示活动菜单项

单击后突出显示 ActionMenuView 中的菜单项

在ASP.Net MVC 5应用程序中访问页面时,如何保持活动菜单项突出显示?

如何在我的移动汉堡菜单中居中,并防止单击菜单项时菜单消失?

对在滚动时突出显示活动菜单项感到困惑(Vanilla JS)

PyQT5 当我们单击菜单栏的对象时,我们要打开一个新窗口

如何将下拉菜单项添加到我的水平菜单栏中?

在OS X上使用屏幕菜单栏时如何使菜单项加速键起作用

如何使用window.location突出显示活动菜单项?

macOS菜单栏App中禁用的菜单项

单击时更改活动菜单项字体

单击菜单项时活动未打开

单击汉堡菜单按钮时如何显示网格菜单项?

如何减小菜单项[Home,关于我们,...]是CSS之间的水平间距?

我们如何像在onCreate()中一样使用onOptionItemSelected之外的菜单项

如何在单击菜单项时隐藏移动设备中的菜单?

如何在 SwiftUI 中单击菜单项时隐藏浮动菜单

如何突出显示特定的弹出菜单项?

jQuery突出显示当前菜单项

突出显示当前菜单项?