java - Motif Borders.Button边框的默认方法未知参数的覆盖方法

标签 java swing overriding look-and-feel motif

我使用以下代码:

UIManager.setLookAndFeel("com.sun.java.swing.plaf.motif.MotifLookAndFeel");


我想覆盖MotifBordersMotifBorders的另一个来源)的内部内部类ButtonBorder的paintBorder方法,并使用它,但是我保留了方案Colors,但我不知道此LAF最初使用了什么Colors(LookAndFeel )。

JButton jb = new JButton(someIcon);
BorderUIResource.CompoundBorderUIResource bc = 
    (BorderUIResource.CompoundBorderUIResource)jb.getBorder();

MotifBorders.ButtonBorder oldMotifBB =
    (MotifBorders.ButtonBorder)bc.getOutsideBorder();

MotifBorders.ButtonBorder newMotifBB = new MotifBorders.ButtonBorder(
    shadow,
    highlight, 
    WHAT_ARGUMENT?,  /*darkShadow (Originally No defined)*/
    focus) {
  @Override public void paintBorder(
      Component c, Graphics g, int x, int y, int w, int h) {
      //Changes Code
  }
};

最佳答案

选中此site

MotifBorders.ButtonBorder newMotifBB = new MotifBorders.ButtonBorder(
    UIManager.getColor("Button.shadow"),        /*shadow*/
    UIManager.getColor("Button.highlight"),         /*highlight*/
    UIManager.getColor("Button.darkShadow"),  /*darkShadow (Originally No defined)*/
    UIManager.getColor("activeCaptionBorder")   /*focus*/) {
  @Override public void paintBorder(
      Component c, Graphics g, int x, int y, int w, int h) {
      //Changes Code
  }
};

关于java - Motif Borders.Button边框的默认方法未知参数的覆盖方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44271116/

相关文章:

c# - 根据子类指定基类抽象方法的返回类型

java - 确定一个方法是否在运行时覆盖另一个

java - 如何解码Java中编码的转义字符?

java - 如何在spark数据集中执行按值计数操作而不对值进行分组?

java - 访问类属性我的名字

java - JPopupMenu 错误,未选择或关闭

java - 这是 JSlider 中的错误吗?

java - 显示 jTable 中两个给定日期之间的元素

java - 方法与类型中的另一种方法具有相同的删除 - 第 2 部分

java - 级联教程字数统计示例错误