找回密码
 立即注册

QQ登录

只需一步,快速开始

cccc
金牌服务用户   /  发表于:2023-10-19 17:56  /   查看:3022  /  回复:7
1金币
本帖最后由 cccc 于 2023-10-19 17:57 编辑

image.png22507933.png



您好,上图这个菜单我想自己定义请问有什么方法?或者是否可以隐藏这个自带的菜单?

我自己用下面的代码定义了一个右键显示菜单事件,但是在sheet名称上方右键,还是显示的自带的菜单


private void fpSpread1_MouseUp(object sender, MouseEventArgs e)
        {
            var hitTest = fpSpread1.HitTest(e.X, e.Y);
            if (e.Button == MouseButtons.Right)
            {
                switch (hitTest.Type)
                {
                    case HitTestType.TabStrip:
                        if (hitTest.TabStripInfo.Sheet > 0)
                        {
                            contextMenuStripTab.Show(fpSpread1.PointToScreen(new Point(e.X, e.Y)));
                        }
                        break;
                    default: break;
                }
            }
        }

最佳答案

查看完整内容

嗯,这个菜单本身没法添加和删除项目的,本质上来说也并不是contextmenu 如果你是要自己定义右键菜单的话,还是得通过ContextMenu属性来定义 有一个关键点是可以自己判断点击的位置是否是tabstrip,然后动态生成对应的contextmenu,甚至是显示其他的自定义界面

7 个回复

倒序浏览
最佳答案
最佳答案
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2023-10-19 17:56:09
来自 8#
本帖最后由 Richard.Ma 于 2023-11-1 14:09 编辑

嗯,这个菜单本身没法添加和删除项目的,本质上来说也并不是contextmenu

如果你是要自己定义右键菜单的话,还是得通过ContextMenu属性来定义

有一个关键点是可以自己判断点击的位置是否是tabstrip,然后动态生成对应的contextmenu,甚至是显示其他的自定义界面
  1.         private void FpSpread1_MouseDown(object sender, MouseEventArgs e)
  2.         {
  3.             if (e.Button == MouseButtons.Right && fpSpread1.HitTest(e.X, e.Y).Type == HitTestType.TabStrip)
  4.             {

  5.             }

  6.         }
复制代码

回复 使用道具 举报
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2023-10-19 18:22:10
2#
可以尝试通过这个fpSpread1.ContextMenu来获取和设置上下文菜单
回复 使用道具 举报
cccc
金牌服务用户   /  发表于:2023-10-19 19:37:36
3#
Richard.Ma 发表于 2023-10-19 18:22
可以尝试通过这个fpSpread1.ContextMenu来获取和设置上下文菜单

可以举例一下代码吗? 怎么可以去掉tabstrip自带的菜单
回复 使用道具 举报
cccc
金牌服务用户   /  发表于:2023-10-19 19:40:28
4#
Richard.Ma 发表于 2023-10-19 18:22
可以尝试通过这个fpSpread1.ContextMenu来获取和设置上下文菜单

这个不行吧   你是不是没有看清楚问题 ?
回复 使用道具 举报
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2023-10-20 11:06:21
5#
不做任何设置的话,tab标签页上点击右键也是没有菜单的。你先确认一下有没有做过其他的设置

或者上传一个demo上来复现目前的情况
回复 使用道具 举报
cccc
金牌服务用户   /  发表于:2023-10-22 16:00:22
6#
1697961555165.jpg295779113.png
回复 使用道具 举报
cccc
金牌服务用户   /  发表于:2023-10-22 16:03:17
7#
Richard.Ma 发表于 2023-10-20 11:06
不做任何设置的话,tab标签页上点击右键也是没有菜单的。你先确认一下有没有做过其他的设置

或者上传一 ...

我知道原因了,因为我设了editable属性
但是这个想过跟属性描述不要一致...
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部