scala.swing.eventをインスタンス化するにはどうすればよいですか。MousePressed?以下を試してみましたが、コンストラクターに文句があります。 MousePressedの宣言は、コンポーネントピアについて何かを述べています...しかし、それを含める方法がわかりません。
import scala.swing.event.MousePressed
import java.awt.Point
object TypeIssue {
val c = new Label()
val test = new MousePressed(c, new Point(0,0), 0, 0, 1, false)
}
エラーは次のとおりです。 オーバーロードされたメソッドコンストラクターMousePressedと代替:(e:java.awt.event.MouseEvent)scala.swing.event.MousePressed(ソース:scala.swing.Component、point:java.awt.Point、modifiers:scala.swing.event。 Key.Modifiers、clicks:Int、triggersPopup:Boolean)(peer:java.awt.event.MouseEvent)scala.swing.event.MousePressedは(scala.swing.Label、java.awt.Point、Int、Int 、Int、ブール値)
回答:
回答№1は1val test =
new MousePressed(new java.awt.event.MouseEvent(c.peer, 0, 0, 0, 0, 0, 0, false))
必要です new
「ケースクラス」の補助コンストラクターを使用しているため、MousePressedの前に(これが必要な理由は説明されていませんが)。
回答№2の場合は1
理解した:
import scala.swing.event.MousePressed
import java.awt.Point
import scala.swing.Label
object TypeIssue {
val c = new Label()
val test = MousePressed(c, new Point(0,0), 0, 0, false)(new java.awt.event.MouseEvent(c.peer, 0, 0, 0, 0, 0, 0, false))
}