我有一个应用程序,我已经创建了一些继承自JComponent
的自定义绘制组件。这些组件可以由用户动态添加到“编辑器区域”。它们也可以被拖动并在该区域调整大小。
用户应该能够为这些组件指定名称,这将导致组件旁边显示标签。我正在努力实现这一点,因为我宁愿不将这个自定义组件嵌入另一个容器中,只是为了添加所述标签。
我想到的最简单的方法(但遗憾的是不起作用)是使用JPanel
代替JComponent
作为超类,为其添加标签并将其设置为某些位置像(-100, 0)
这样的负值。但正如你当然知道的那样,JPanel
被剪裁到它的边界,这意味着标签不会显示。
有没有一种简单的方法来实现我想要做的事情?将我的自定义组件嵌入另一个容器只是为了添加标签似乎非常不舒服,因为原始组件是唯一应该在拖动,上下文菜单等方面具有交互性的东西。另一方面,重定向鼠标事件来自“标签容器”的“真实”组件也似乎很奇怪......
任何想法,见解都会受到高度赞赏吗?