问题标签 [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.

0 投票
2 回答
420 浏览

macos - 在 OS X 上为 Java 7u7(包含 JavaFX 2.2)编译 scalafx

scalafx的编译说明说要做:

然而,随着 JavaFX 的新打包成为 Java JDK 本身的一部分(即 OS X 的 7u7),似乎不再有这样的“javafx-sdkx.xx”文件夹。Oracle 文档说 JavaFX JDK 与主要的 Java JDK 一起放置(在相同的文件夹中)。

所以我这样做:

我是做错了什么还是 scalafx 与最新的 Java 版本(7u7,JavaFX 2.2)不兼容。我能做些什么?

http://code.google.com/p/scalafx/

附录

..最后(按照下面 Igor 的解决方案)sbt run轻松启动彩色圆圈演示(好吧,如果有支持的 GPU 的话)。Oracle声称“JavaFX 支持 Lion 或更高版本的任何 Mac OS X 系统上的图形硬件加速”,但我倾向于认为我正在使用的 NVidia 驱动的 Mac Mini 可以进行软件渲染。

不,即使是其他快速使用 javafx 的 MacBook Air(核心 i7)在演示中也很迟钝。也许是演示。

0 投票
1 回答
261 浏览

eclipse-juno - 在 Eclipse Juno 中链接 ScalaFX 项目的问题

这似乎是我使用 Eclipse (Juno) 进行 ScalaFX 开发之旅中的最后一个痛点。简而言之,我可以在其中编译和运行代码,sbt但如果我想调试(会很好),我需要 Eclipse。

不幸的是,我无法制作一个会表现出这种痛苦的小项目(我遇到了其他问题)。如果下面的快照向任何人说明了可能出现的问题,那么您将极大地帮助我。

有问题的行看起来像这样(其中没有什么特别之处):

在此处输入图像描述

这是我的.classpath- 如果问题出在哪里:

所有这些都在 OS X 上,运行 Oracle Java 7u9 JDK(至少我认为是这样!)。

ps 与我使用过的其他 IDE(Visual Studio、XCode)相比,Eclipse 仍然很慢而且很麻烦,但是因为官方的ScalaIDE绑定正在使用它,所以它有点“必须”。

0 投票
1 回答
424 浏览

java - 在 BorderPane 内不服从 ScalaFX/JavaFX Node.translateX/Y

我正在绘制各种 Rectangle 节点,我希望它们能够在屏幕上拖动。

我的代码目前是这样的:

Draggable trait 提供了 draggablePerformPress() 和 draggablePerformDrag() 方法,本质上是设置 translateX 和 translateY 的地方。

如果我单击并拖动 Rectangle 节点,它不会移动。但是,如果我删除 BorderPane 并使 Group 对象成为 Scene 的根,则可以拖动。我已经确认 onMouse 事件正在被触发,所以一定是由于某种原因 BorderPane 覆盖了 translateX/Y ...我只是不知道为什么,也不知道如何防止这种情况发生。

0 投票
1 回答
4771 浏览

textarea - JavaFX / ScalaFX - 更改禁用 TextArea 的文本颜色?

我有一个带有一些 TextArea 元素的 GUI 来显示信息。由于 GUI 将对 keyevents 做出反应,因此我在场景元素中添加了一个 EventHandler。因为我不想为每个文本区域添加一个 EventHandler,所以我禁用了它们以防止它们被聚焦,因为这样场景的事件处理程序就不再工作了。现在我遇到了问题,文本显示为灰色,而不是黑色,即使我在 css 文件中更改了它。你有什么想法为什么文字不是黑色的,我该如何解决?

这是一些代码:

0 投票
2 回答
1212 浏览

javafx-2 - ScalaFX TableView 中的整数列

我是 ScalaFX 的新手。我正在尝试调整一个基本的 TableView 示例,以包含整数列。

到目前为止,我已经想出了以下代码:

问题是,虽然nameCol效果很好,但ageCol它甚至无法编译。

在该行cellValueFactory = {_.value.age}中,我收到类型不匹配错误。它期待一个ObservableValue[Int,Int]但得到一个IntegerProperty

我正在使用为 Scala 2.10 编译的 ScalaFX 1.0 M2。

0 投票
1 回答
698 浏览

scala - 鼠标单击并悬停在 javafx2 上的奇怪行为

我正在尝试在带有 scalafx 的 scala 上使用 javafx2。

我编写了一个简单的应用程序并添加了一个菜单和一个菜单项。当我单击菜单并将鼠标悬停在菜单项上时,有时它不会突出显示菜单,因此无法单击。为了检查我的代码是否做错了,我在 Windows 机器上运行完全相同的代码,它就可以工作。

我不明白为什么会这样。我想这通常与统一或 gnome 或 linux 有关。

有没有其他人遇到过同样的问题?有没有办法解决或克服它?

谢谢我提前

代码示例:只有菜单有奇怪的行为

编辑1:如果我单击菜单并使用键盘导航并按Enter,它也适用于Linux。

0 投票
1 回答
3379 浏览

java - 如何限制 ScrollPane 内容的宽度

我有一个 Scrollpane 女巫,在 VBox 中包含几个 TitledPanes。我只想在垂直方向滚动。内容的宽度应限制为 ScrollPane 的宽度。当 TitledPane 的宽度大于 ScrollPane 的宽度时,如何让 TitledPane 剪辑标题?在 TitledPane 将其宽度调整为 Title 宽度的那一刻,与任何 maxWidth、Fit to Width 或类似设置无关。

费边

示例图像

0 投票
1 回答
926 浏览

scala - 如何使用 BlendMode.Difference 在 ScalaFX/JavaFX 中解决绘图 XOR 伪影问题?

我正在将一些代码从 Java 移植到 Scala,并且在尝试“橡皮筋”时遇到了绘制伪影的问题 - 即绘制一个随鼠标指针移动的矩形。

这在 Java2D 中相对简单,但在 Scala/JavaFX 中运行时遇到了问题。

我在 OS/X 10.8.4 上使用 Scala 2.10.2、JavaFX 2.2.0-b21 和 Java 1.7.0_06 Java HotSpot(TM) 64 位服务器 VM。

graphicsContext2D.globalBlendMode = BlendMode.DIFFERENCE 似乎等同于 Graphics2D.setXORMode() 并且它几乎可以工作,但它:

  • 在填充矩形时,有时会留下矩形所在位置的微弱痕迹。
  • 除非线宽是偶数整数,否则在抚摸矩形时会生成不会取消绘制的灰线。
  • 在用偶数的线宽抚摸矩形时,有时会留下矩形所在位置的微弱痕迹。
  • 不能与父组件提供的背景正确异或。

最后一项不是我所期望的,但我想我理解它在做什么(将 Canvas 中未定义的背景视为黑色,因此它在绘制时异或为白色,在未绘制时为黑色,即使它看起来是绿色的从...开始。)

这是一个显示问题的测试用例:

此屏幕截图显示了反复移动鼠标后的问题(这是抚摸和 2 像素线宽):

截屏

任何帮助将不胜感激。

0 投票
2 回答
1323 浏览

function - 在scala中将函数与条件逻辑绑定

我是来自 JavaFX 1.3 的 scala 新手,这是我在 stackoverflow 中的第一篇文章

在 JavaFX 1.3 我可以做这样的事情

在 Scala 中,我尝试做这样的事情:

但是,它似乎不是动态工作的。当舞台出现时,函数条件中的表达式只计算一次。我有点期待该表达式中的值是实时评估的。

具体来说,我想将某些东西调整到某个限制,并且我正在使用绑定来实现它。因此,我希望绑定函数继续评估表达式,并在我调整其他事物的大小时给我适当的宽度。

无论如何,我将在下面粘贴实际代码:

在此先感谢您的帮助。

0 投票
1 回答
669 浏览

css - 如何在 ScalaFX 中使用 CSS 设置自定义 TreeCell 的样式?

我想使用 CSS 更改自定义 TreeCell 的背景颜色,但在树单元格上设置样式属性不起作用。我可以使用如下所示的 CSS 文件为树设置黄色和灰色交替单元格的样式:

并使用如下所示的事件处理程序更改文本的填充样式:

但树细胞的样式不会改变。