如何在Scala中将按钮放入Swing Table?

如何在Scala中将按钮放入Swing Table?,swing,button,renderer,Swing,Button,Renderer,对于Java,解决方案如下: (我需要将按钮放在给定的列中,而不是一行) 在将其转换为Scala时,我遇到了为表列设置新渲染器的问题。列没有getter方法,列模型也没有getter方法。至少我没有看到任何: 我需要这样的东西: table.getColumn(... 或 给我的纽扣注射器注射 如何设置带有Swing table按钮的列? 更新1 Scala Swing表具有对等字段,该字段是Java JTable。我可以设置渲染器,但现在有另一个问题——渲染器没有使用 渲染器 class B

对于Java,解决方案如下: (我需要将按钮放在给定的列中,而不是一行)

在将其转换为Scala时,我遇到了为表列设置新渲染器的问题。列没有getter方法,列模型也没有getter方法。至少我没有看到任何:

我需要这样的东西:

table.getColumn(...

给我的纽扣注射器注射

如何设置带有Swing table按钮的列?

更新1 Scala Swing表具有对等字段,该字段是Java JTable。我可以设置渲染器,但现在有另一个问题——渲染器没有使用

渲染器

class ButtonRenderer extends javax.swing.JButton with  TableCellRenderer
{
  def getTableCellRendererComponent(table : javax.swing.JTable, 
                                   value : java.lang.Object,
                                   isSelected : Boolean, 
                                   hasFocus : Boolean, 
                                   row : Int, 
                                   column : Int) : java.awt.Component =
  {
    setText("it works");
    return this;
  }
}
my_table.peer.getColumnModel().getColumn(3).setCellRenderer(new ButtonRenderer());
设置渲染器

class ButtonRenderer extends javax.swing.JButton with  TableCellRenderer
{
  def getTableCellRendererComponent(table : javax.swing.JTable, 
                                   value : java.lang.Object,
                                   isSelected : Boolean, 
                                   hasFocus : Boolean, 
                                   row : Int, 
                                   column : Int) : java.awt.Component =
  {
    setText("it works");
    return this;
  }
}
my_table.peer.getColumnModel().getColumn(3).setCellRenderer(new ButtonRenderer());
更新2
Scala Swing可能有问题,我将GUI部分重写为JavaSwing(在Scala中),并将按钮插入到表中

这些在互操作性方面的无休止的小挫折是我不能将Scala用于任何大型项目的原因。也许科特林会有所不同。请看这篇文章。其中一个答案看起来很有希望。