问题标签 [scalafx]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
scala - ScalaFX TableView 中的可编辑布尔列
我是 ScalaFx 的新手,想创建一个 TableView,其中包含一个带有CheckBox
s 的可编辑布尔列(以及带有 TextFields 的可编辑 String 和 Int 列)。我想我需要使用CheckBoxTableCell
. 我正在使用 JDK 7u25、ScalaFX 1.0.0-M4/M5 和 Scala 2.10.2-final。(我不完全确定 ScalaFX 版本,但肯定至少是 1.0.0-M5。无论如何它是 Jarek 于 8 月 1 日上传到https://oss.sonatype.org/index.html#nexus的快照-search;quick~scalafx . Jarek 只为 Scala 2.9.x 编译,但我已经下载了他的源代码并重新编译了它。)
我已经设法基于ScalaFX TableView 中的整数列,http ://foofighter2146.blogspot.com/2013/06/tutorial-scalafx-slick.html 和 scalafx-demo: SimpleTableView 让它工作了一半。但是,我不能在 TableView 中使用 CheckBox 并使用它们的值。相反,我只能让它以我需要输入“true”或“false”来编辑表中的值的方式工作。
到目前为止,这是我设法完成的工作:
对于“酷”表列,我想替换
和
为了在 TableView 中获得漂亮的 CheckBox(目前,我得到 TextFields,我必须在其中输入“true”或“false”)。但是,这给了我(明显的)错误:
如果我改变
到 val selectedProperty = {rowNum: Int => model.characters(rowNum).cool}
我收到一条错误消息,基本上归结为CheckBoxTableCell.forTableColumn[Person, Boolean](selectedProperty)
要求selectedProperty
是 type的事实,Int => ObservableValue[Boolean, java.lang.Boolean]
而不是Int => ObjectProperty[Boolean]
scala - 在 Scala 的列表中使用“嵌套”类型
我正在使用 ScalaFX 和 JavaFX,并拥有以下代码:
我的问题是这段代码无法编译;它说我不能将 ObservableList[ListItem[Type1]] 用于该workWithList
方法,该方法需要 ObservableList[ListItem]。
正如我一直在玩的那样,这段代码的一些变体表示存在未经检查的警告,并且由于类型擦除,模式匹配将不起作用。
理想情况下:
- 只有一个列表可以保存 ListItem[Type1] 和 ListItem[Type2] 类型的对象
- 我可以在使用项目时进行模式匹配,以根据正在使用的项目类型来做不同的事情
workWithItem
可以与任何一种类型的项目一起使用。在我当前的代码中,我不得不将签名更改为workWithItem(item:ListItem[_])
然后执行workWithItem(someItem.asInstanceOf[ListItem[_]])
. 可能不是正确的做法!
谢谢!
macos - 如何在 ScalaFX/JavaFX 2 中播放失败动画?
在 ScalaFX 中,如果我将 TreeCell 拖放到包含 TreeView 之外的控件上,则会播放一个简短的动画,显示拖动的项目返回到其原始位置。
如果我将 TreeCell 放到应用程序之外,也会发生同样的情况 - 例如放到桌面上。
如果我将 TreeCell 放到不应被接受的位置的包含 TreeView 上,我希望播放相同的动画,但设置:
不足以产生这种效果。
有没有办法从 TreeCell 的 onDragDropped 事件处理程序中播放放置失败的动画?
编辑
根据要求添加了代码示例。将一个条目拖放到控件外,您将看到放置失败的动画。将一个条目拖放到列表下方,动画不会播放。问题是如何让动画在第二种情况下播放。
scala - Type mismatch error upon compiling project with ScalaFX in SBT
I'm developing a project with ScalaFX and MySQL database.
SBT successfully added MySQL connector via build.sbt
file. When it compiles the project, it stops with a type mismatch error:
The following is a code snippet from the main method:
This is the DbConnection
case class:
Why does compile
fail?
scala - scalafx + intellij:NoClassDefFoundError:javafx/scene/shape/CullFace
我在尝试创建 javafx scala 项目时被阻止。我在 intellij idea 13(ast 项目)中创建了一个 scala 项目,然后我手动添加了 scalafx jar(“scalafx_2.10-8.0.0-M1.jar”)并复制了这个小程序:
但不幸的是,我收到此错误消息:
应用程序启动方法中的异常线程“主”java.lang.RuntimeException 中的异常:com.sun.javafx.application 的 com.sun.javafx.application.LauncherImpl.launchApplication1(LauncherImpl.java:399) 的应用程序启动方法中的异常。 LauncherImpl.access$000(LauncherImpl.java:47) at com.sun.javafx.application.LauncherImpl$1.run(LauncherImpl.java:115) at java.lang.Thread.run(Thread.java:722) 原因:java .lang.NoClassDefFoundError: javafx/scene/shape/CullFace at scalafx.Includes$.(Includes.scala:55)
似乎问题与 javafx 有关,我忽略了它,因为它通常包含 java7 ......你能告诉我我做错了什么吗?
scala - '<==' 使用 scalafx 时 intellij 未知
在使用 scalafx 的 scala 程序中,intellij 无法识别符号:“<==”。
jar 的 scalafx 版本是 2.10:1.0.0-M5。程序是这样的:
你知道错误来自哪里吗?(intellij 版本是最后一个:v13).java 版本是 1.7.0 x64 for mac,scala 版本是 2.10.0。请注意,“选择”和“否则”也无法识别。谢谢
scala - JavaFx2 或 ScalaFx + Akka
如何在 JavaFX/ScalaFX 应用程序中运行 Akka 演员?
(这是基于第一个答案的问题更新)
是共享相同执行上下文的解决方案吗?意味着拥有基于 JavaFx ExecutorService 的 Actors 调度程序?(运行 UI 操作代码的那个)
这是否意味着一个代理将代表 UI 并能够对其进行操作?我的意思是因为下面建议如果 UI ExecutorService 上有几个演员,这不意味着在代理之间共享状态(对象是 UI)吗?
2 个参与者可以在不同的执行者服务上进行通信吗?我问这个是因为根据下面的建议,一些代理会在 UI Executor Service 上,而另一些则不在。
最后,为什么按原样使用 akka,它的 Executor 上下文不同并使用 Platform.runLater,可能会对 UI 的性能产生一些影响。我提出了在同一个应用程序上的多个执行器服务的问题:这很糟糕吗?
scalafx - 使用 filterEvents() 时如何删除事件过滤器?
您好我想一起使用 rxscala 和 scalafx 所以我这样做是为了重新打包鼠标事件:
问题是在Subscription { ??? }
块内我想删除注册的事件过滤器,filterEvent()
但看着它我发现它filterEvent()
没有保留对事件过滤器的引用,所以我不能使用stage.removeEventFilter()
. 我也没有看到removeFilterEvent()
等价物,那么如何使用 remove 注册事件过滤器filterEvent()
?
我想一种解决方法是不使用filterEvent()
,而是使用 javafx addEventFilter()
,但语法更糟。
scala - 在scalafx中不同容器中动态布局的节点之间绘制箭头
我正在尝试使用 ScalaFX 绘制树形图 - 它们之间带有箭头的节点。
为了简化布局,我使用标准 ScalaFX 布局容器(例如 HBoxes 和 VBoxes)嵌套每个分支。
我想不出画线的好方法,特别是将线的开始和结束属性绑定到它们连接的节点的属性。如果它们在同一个容器中,那就很容易了,我可以做类似的事情
但是,如果它们在不同的容器中,它就不起作用 - 我需要找到与场景相关的组件。
附上最小的例子 - 真的,我正在寻找一些东西来用有效的东西替换 Arrow 中的绑定。我想——如果可能的话——保持干净整洁的 ScalaFX 听众做事风格。
编辑:当前的行为是从顶部节点向左绘制一条水平线 - 坐标没有被转换以匹配它们所在容器的场景坐标,我不知道该怎么做。