Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/user-interface/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
javaguil&;F圆形按钮_Java_User Interface - Fatal编程技术网

javaguil&;F圆形按钮

javaguil&;F圆形按钮,java,user-interface,Java,User Interface,我目前正在开发一个应用程序的前端,使用eclipse上的WindowsBuilder插件,其中我在框架顶部有一个“工具栏” 用户可以使用不同的按钮进行交互。我希望按钮是圆形的,带有我将添加的自定义图标。当“鼠标进入”时,我希望悬停按钮放大,当“鼠标退出”时,我希望按钮恢复正常。到目前为止,我遇到的问题如下: 无法制作圆形按钮 如何放大/缩小它们(除了set.width()+某物,setHeight()+某物) 我想要这样的东西: 我已经尝试过jtattoo L&F for circle按钮,但

我目前正在开发一个应用程序的前端,使用eclipse上的WindowsBuilder插件,其中我在框架顶部有一个“工具栏” 用户可以使用不同的按钮进行交互。我希望按钮是圆形的,带有我将添加的自定义图标。当“鼠标进入”时,我希望悬停按钮放大,当“鼠标退出”时,我希望按钮恢复正常。到目前为止,我遇到的问题如下:

  • 无法制作圆形按钮
  • 如何放大/缩小它们(除了set.width()+某物,setHeight()+某物)
  • 我想要这样的东西:

    我已经尝试过jtattoo L&F for circle按钮,但1.3版本会抛出错误,1.6版本不会抛出错误,但不会更改按钮形状

    注:我之所以同时问这两个问题,是因为(我认为)如果有人已经开发/知道一个L&F主题,它们可以用一个L&F主题来解决。

    不久前,我写了一个类,可以处理椭圆形、圆形和胶囊状的按钮

    您可以扩展此类并重写
    getBackgroundImage()
    方法以返回要将其设置为按钮背景的图像。然后像往常一样添加侦听器和文本。只需单击椭圆形/圆形区域即可触发该操作

    准备好后,我相信您应该能够导入一个新组件。

    不久前,我编写了一个类,可以处理椭圆形、圆形和胶囊状的jbutton

    您可以扩展此类并重写
    getBackgroundImage()
    方法以返回要将其设置为按钮背景的图像。然后像往常一样添加侦听器和文本。只需单击椭圆形/圆形区域即可触发该操作


    准备好后,我相信您应该能够导入一个新组件。

    开始很简单:您可以使用圆形图标(),包括一个更大的滚动图像,并删除一些按钮装饰,如边框。如果这还不够,您可能需要更详细地描述您不满足的要求:(例如,更精确的命中区域?动画?需要实际扩展到其他控件上…?)正如您正确猜测的那样,这就像一个中间地带解决方案。我确实想要命中区域(如果这不需要花费大量时间来实现),即使我找到了解决方法,当我将图标添加到按钮时,图标会采用任意(?)大小。为了澄清这一点,如果我有一个图像,我不知道如何使其适合按钮区域。关于动画,我会喜欢它,但这不是必须的。一个简单的放大就足够了。从简单开始:你可以使用圆形图标()仅包括一个较大的翻滚图像,并删除一些按钮装饰,如边框。如果这还不够,您可能需要描述更多您不满足的要求:(例如,更精确的命中区域?动画?需要实际扩展到其他控件上…?)正如你正确猜测的那样,这就像一个中间解决方案。我确实想要命中区域(如果这不需要花费大量时间来实现),即使我找到了解决方法,当我在按钮上添加图标时,图标会采取任意(?)大小。为了澄清这一点,如果我有一个图像,我不知道如何使它适合按钮的区域。关于动画,我会喜欢它,但这不是必须的。简单的放大就足够了。所以我只是实例化一个新的卵形按钮而不是JButton?是的。你只需要将
    新的JButton()
    替换为
    新的卵形按钮()
    。按钮将是一个圆形,只要其高度和宽度相同。其余部分应该可以工作,因为OvalButton继承自JButton。我刚刚与您的类一起玩过。做得很好。只需很少的修改就可以完美匹配。如果您重新开发它,imo,添加嵌套枚举,它就完美了。做得好!非常好是否实例化一个新的OvalButton而不是JButton?是的。您只需要将
    new JButton()替换为
    new OvalButton()
    。按钮将是一个圆形,只要其高度和宽度相同。其余部分应该可以工作,因为OvalButton继承自JButton。我刚刚与您的类一起玩过。做得很好。只需很少的修改就可以完美匹配。如果您继续开发它,imo,添加嵌套枚举,这很完美。干得好!