2016-08-24 5 views
-2

Можно ли использовать значение из одной jLabel для вычисления нового значения, помещенного в другой jLabel? Я делаю платформу для бронирования самолетов и делаю определенные расчеты в одном jLabel относительно цены билета. Я хочу использовать это для того, чтобы сделать следующее:Как использовать значение от одной jLabel к другой

do{ 


     jLabel25.get(); 


    } while(jRadioButton5.isSelected()); 

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

+2

Вам необходимо предоставить намного больше деталей. JLabels ничего не вычисляют. Опишите имеющуюся у вас информацию, результаты, которые вы хотите, и результаты, которые вы сейчас получаете. – VGR

+0

@ VGR Я включил более подробные данные выше^ –

+0

Вам придется повторять вычисления каждый раз, когда меняются цены или коэффициенты скидки. Этого нельзя избежать. – VGR

ответ

1

Я не совсем уверен, что вы просите, но я постараюсь изо всех сил помочь в любом случае.

Скажем, у вас есть две метки: ("Hello World!")

JLabel label1 = new JLabel l("Hello!"); 
JLabel label2 = new JLabel l("Hello world!"); 

Если вы теперь хотите, чтобы установить содержание label1 ("Hello") в Метка2 вы можете сделать следующее:

label2.setText(label1.getText()); 

Поскольку вы использовали слово «расчет» в описании своей проблемы, я предполагаю, что ваши метки содержат числа, на которые вы хотите выполнить вычисления.

Вы можете, например, выполнить это с помощью метода меток .getText() с Integer.parseInt (String s) или Double.parseInt (String s) в зависимости от того, какой тип значения у вас есть. Так, например:

JLabel label1 = new JLabel l("5"); 
JLabel label2 = new JLabel l(""); 

int i = Integer.parseInt(label1.getText()); // takes the string from label1 and transforms it to an integer using the parseInt() method. 
// i now has the value 5 

i = i*5; // an example of some calculation you mentioned you wanted to do 

label2.setText(i +""); // transforms the integer value to string and sets it into label2 

Я не знаю, правильно ли я понял вашу проблему, поэтому, пожалуйста, уточните, если вам нужна дополнительная помощь :).