我正在使用x
/ motif
作为GUI。我有右键单击某个区域时弹出的上下文菜单。
当右键单击太靠近显示屏的右边缘,因此菜单本身太靠近显示边缘时,子菜单没有足够的空间拉出主菜单旁边。在这种情况下,当子菜单没有更多的空间时,它们开始占用与主菜单相同的空间。这使菜单系统难以靠近显示器的右边缘使用。
我见过有人问过其他用户界面系统这个问题,例如网页设计,但我找不到x
/ motif
的任何内容。我现在正在进行实验,看看是否有可能或合理地显示菜单,而不是点击的位置(例如:你点击显示边缘附近,菜单显示X像素数左侧通常会,所以还有空间),但我不确定这是否会成功,并且在这种情况下使级联菜单向左级联,将比这种解决方案更可取。
我在网上查了很多地方,并查看了Motif编程手册和Motif参考手册。如果它在那里,我还没有找到它。
我希望资源设置为XtVaSetValues
或类似的东西,以便我可以执行以下操作:
XtVaSetValues(menu, XmNsomething, please_go_left, NULL);
这是否合理,甚至可能与可用资源有关(即:没有创建完全自定义的菜单系统来重新发明轮子)?
问题:如何将上下文菜单的子菜单级联到左侧,而不是让它们在太靠近显示器边缘时尝试向右弹出?