gpt4 book ai didi

java - Synth 的 JPanel 状态

转载 作者:行者123 更新时间:2023-11-30 04:58:22 25 4
gpt4 key购买 nike

在我的应用程序中,我有一些自定义按钮,它们具有自定义文本/图标布局和一些通常不与按钮关联的额外元素。例如有些有 2 个文本标签,而不是一个。

我已按如下方式实现了自定义按钮:

class CustomButton extends JPanel implements MouseListener {
CustomButton() {
setName("CustomButton");
}
}

我在 L&F 中使用 Synth,并且希望在 XML 文件中定义尽可能多的样式信息(主要是颜色设置)。

在 XML 文件中我有这个:

<style id="customButtonStyle">
<state>
<color idref="A" type="BACKGROUND" />
</state>
<state value="MOUSE_OVER">
<color idref="B" type="BACKGROUND" />
</state>
<state value="PRESSED">
<color idref="C" type="BACKGROUND" />
</state>
</style>
<bind sytle="customButtonStyle" type="name" key="CustomButton" />

当我运行应用程序时,颜色“A”使用正确,但颜色“B”和“C”从未设置。

我的问题是,如何通知 Synth 我的自定义按钮的状态?

旁白:我确实考虑过让 CustomButton 扩展 JButton,但我无法找到一种使用自定义子组件制作按钮的好方法。如果这种方法不起作用,我可能会将其作为一个单独的问题发布。

最佳答案

也许不是你问题的答案,我认为使用 ButtonModel 更舒服,如MouseListenerMouseMotionListener ,我的想法的例子是 here ,

关于java - Synth 的 JPanel 状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7768889/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com