2013-02-19 2 views
0

EDIT: Я вернулся и предоставил длинное объяснение каждого из ниже. Затем я начал думать. Я думаю, что мой вопрос был элементом разделения (getUnitDivisionFactor()) не наблюдалось. Я изменил это на наблюдаемый тип данных, и все это начало работать. Поэтому вместо того, чтобы удалять этот «глупый вопрос», я оставлю его. Возможно, это поможет кому-то другому.Как вы выполняете операции по привязкам Java FX 2?

Я использую JFXtras 2. Существует виджет «LCD» с привязкой valueProperty. Это двойное связывание. Я связывание, как это ... Что не работает ...

xLcd.valueProperty().bind(TinygDriver.getInstance().m.getAxisByName("x").getMachinePositionSimple().subtract(TinygDriver.getInstance().m.getAxisByName("x").getOffset()).divide(tg.m.getUnitDivisionFactor())); 

Проблема мне действительно нужно сделать вычитание первым ..

(getMachinePositionSimple - getOffset())/getUnitDivisionFactor ()

Однако я немного недооцениваю, как это сделать в одной настройке привязки. Я думаю, что привязка чисел может быть путем. Однако, не совсем уверен, как правильно это исправить?

Любая помощь будет отличной.

Райли

+0

не работает означает что? Кроме того, какой тип 'TinygDriver.getInstance(). M.getAxisByName (" x "). GetMachinePositionSimple()' –

+1

Я пытался играть с такими выражениями, и все должно работать правильно, если вы используете свойства в выражениях, таких как substract, divide. Я имею в виду, ваше выражение должно оценить, что вам нужно. –

+0

Спасибо за вход sergey и alexander. Я написал этот вопрос, потратив несколько часов на кодирование, и было уже поздно. Извините за беспокойство! – ril3y

ответ

0

getUnitDivisonFactor() возвращал регулярный двойной тип данных. Я изменил это на SimpleDoubleProperty и все только начали работать .. См

xLcd.valueProperty(). Bind (TinygDriver.getInstance(). M.getAxisByName ("х"). GetMachinePositionSimple(). Вычитать (Т.Г. .m.getAxisByName ("х") getOffset()) делят (tg.m.gcodeUnitDivision))..;