gpt4 book ai didi

java - 将标签添加到 Scala Swing 面板时出现类型不匹配错误

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

我有这个扩展 FlowPanel 的类,我正在尝试向其中添加标签:

import java.awt.{Label, Color}
import scala.swing._
import scala.util.Random

class MyPanel extends FlowPanel{
val dimension = new Dimension(600,400)
maximumSize = dimension
minimumSize = dimension
preferredSize = dimension
foreground = Color.white
background = Color.LIGHT_GRAY

def drowLabels(size: Int) = {
for(i <- 0 until size){
contents += new Label()
revalidate();
repaint();
}
}

但我收到一条错误消息:

type mismatch;
found : java.awt.Label
required: scala.swing.Component
contents += new Label()
^

但例如,如果我将 new Label() 更改为 new Button(),一切正常。实际上,我无法将 Label 添加到任何类型的容器中,总是会出现一些错误。

我一直试图找到一个小时的答案,但没有成功。

最佳答案

我认为该消息告诉您需要一个 SWING 组件,而 java.awt.Label 不是(查看您的导入)。 SWING 标签是 javax.swing.JLabel ,因此按如下方式修复导入应该可以解决您的问题:

import java.awt.Color
import javax.swing.JLabel
import scala.swing._
import scala.util.Random

class MyPanel extends FlowPanel {
...
def drowLabels(size: Int) = {
for(i <- 0 until size){
contents += new JLabel()
revalidate();
repaint();
}
}

关于java - 将标签添加到 Scala Swing 面板时出现类型不匹配错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27621939/

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