2016-08-29 5 views
0

Могу ли я рассчитать баллы/баллы до того, как параметры (переключатели) перетасовываются, как в коде ниже. До Collection.shuffle() параметры фиксируются, так как correctChoice всегда будет назначаться переключателю c2. Так можно использовать какРасчетный счет/Очки Викторины

if (c2.isSelected()) 
score=score+2; 

и после этого я перетасовываю выбор.

QsL.setText(Question.get(i).getQs().toString()); 
c1.setText(Question.get(i).getChoiceOne()); 
c2.setText(Question.get(i).getCorrectChoice()); 
c3.setText(Question.get(i).getChoiceTwo()); 
scorelbl.setText(Question.get(i).getScore()); 
if (c2.isSelected()) { 
    score=score+2; 
    JOptionPane.showMessageDialog(null,score); 
} 
String one = Question.get(i).getChoiceOne(); 
String two = Question.get(i).getChoiceTwo(); 
String three = Question.get(i).getCorrectChoice(); 
List<String> choices = Arrays.asList(one, two, three); 
Collections.shuffle(choices); 
c1.setText(choices.get(0).toString()); 
c2.setText(choices.get(1).toString()); 
c3.setText(choices.get(2).toString()); 

Спасибо за ваши ответы заранее. Я отредактировал этот пост.

+0

Если вы говорите 'Массивы. asList (один, два, три) 'вы можете удалить все вызовы' toString() '. – byxor

+0

@BrandonIbbotson, но это не решит мою проблему. На данный момент это работает, я имею в виду, что correctChoice (Answer) приходит случайно среди трех параметров переключателя –

+0

Я знаю, что это не решит проблему. Вот почему это комментарий, а не ответ. – byxor

ответ

3

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

class Choice { 
    String text; 
    Boolean correct; 
    JRadioButton button; 
} 

Пусть Question содержат List<Choice> choices, готовый быть перемешиваются и назначены кнопкам. В действии кнопки ActionListener найдите choices для кнопки выбора, чтобы определить правильность выбранного выбора. Обновите оценку.

+0

прошу извинить меня, но я не мог понять ваше предложение. Можете ли вы предоставить мне некоторые подробности.? –

+0

Также возможно, если я рассчитываю счет до выбора Shuffle? –

+0

Вы не можете вычислить счет до тех пор, пока на вопрос не будет дан ответ; для более конкретного руководства, пожалуйста, отредактируйте свой вопрос, включив в него [mcve], который показывает ваш пересмотренный подход. – trashgod