首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >向GLCanvas添加组件

向GLCanvas添加组件
EN

Stack Overflow用户
提问于 2009-09-14 22:38:20
回答 2查看 1.5K关注 0票数 0

我正在使用一个在GLCanvas上绘制的应用程序。我想在它上面添加一个“浮动菜单”(我会在Swing中通过在玻璃窗格中添加一个菜单来做这件事)。既然GLCanvas没有扩展容器,那么建议的方法是什么呢?

EN

回答 2

Stack Overflow用户

发布于 2009-09-14 23:18:42

GLCanvas inherits from java.awt.Component,所以当您向JFrame添加GLCanvas时,您可以在包含的JFrame上使用glasspane。

或者,根据您想要的视觉效果,您可以在场景在GLCanvas上完成渲染后,添加对glOrtho的GL调用,然后使用GL本身中的基元在场景顶部绘制菜单(尽管那样您将无法操纵自己的回调行为等...我不能从问题中确定您是否想要进入到这个问题中)。

票数 0
EN

Stack Overflow用户

发布于 2009-09-15 05:01:48

你说的是弹出式菜单吗?您可以将MouseListener添加到您的GLCanvas (因为它是从组件扩展而来的),在MouseListener中,检查mouseEvent.isPopupTrigger(),如果是这样的话,创建您的JPopupMenu -因为您想在重量级组件上显示它,所以在显示JPopupMenu之前调用setLightweightPopupEnabled(false) -然后在JPopupMenu上调用show(glCanvas,x,y)。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1424250

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档