Как поместить количество правильных и неправильных ответов в один столбец на диаграмме Excel

Объяснение

В первом сценарии , когда вы используете

Task task = new Task<Void>() {
  @Override
  protected Void call() throws Exception {
      initStubGamepad();
      return null;
  }
}

Внутри initStubGamepad(), который запущен на задаче, вы пытаются обновить компоненты пользовательского интерфейса внутри методов pressBtn() и releaseBtn(), поэтому вы сталкиваетесь с

java.lang.IllegalStateException: Not on FX application thread

, поскольку все обновления пользовательского интерфейса должны встречаться в потоке JavaFX

В втором сценарии , когда вы используете

Platform.runLater(new Runnable() {
    @Override
    public void run() {
        initStubGamepad();
    }
});

, пользовательский интерфейс не появляется, потому что у вас бесконечный цикл внутри initStubGamepad(), который помещает поток приложений JavaFX в бесконечный цикл

Решение

. К тому времени, как вы сюда доберетесь, вы должны уже найти решение. Если вы этого не сделали, попробуйте поместить обновление компонентов Javafx в поток пользовательского интерфейса. Таким образом, вместо вызова initStubGamepad() внутри Platform.runLater попробуйте вызвать внутри него pressBtn() и releaseBtn().

Попробуйте использовать

while (true) {
   if (rnd.nextInt(30) == 3) {
      Platform.runLater(() -> pressBtn());            
   } else if (rnd.nextInt(30) == 7) {
       Platform.runLater(() -> releaseBtn());            
   }
}

или вы также можете использовать

public void pressBtn() {
    if(!isXPressed) {
        Platform.runLater(() -> iv1.setVisible(true));
        isXPressed = true;
    }
}
0
задан Grizzly 20 February 2019 в 23:22
поделиться

1 ответ

Как уже упоминалось в комментарии Джерри, вы получите краткий учебник о том, как создавать гистограмму с накоплением. Например, , этот .

Поскольку ваши данные очень малы, я продемонстрирую, как это сделать быстро и просто:

  • Сначала вам нужно правильно настроить данные, например:
[1125 ] enter image description here

  • Во-вторых, вам нужно выбрать диапазон ячеек A1 - C9 и выбрать столбчатую диаграмму с накоплением под диаграммами (также показано в ссылке выше).

  • Это создаст вашу гистограмму с накоплением

enter image description here

  • Теперь нажмите на синяя полоса, поэтому она выделяет эту серию и меняет цвет на зеленый:

enter image description here

  • Затем нажмите вправо по вертикали По оси и по опциям выберите max и unit 338, см. скриншот ниже (на голландском, но вы поймете):

enter image description here [ 1130]

  • Щелкните по полной диаграмме, добавьте заголовок вертикальной диаграммы и измените ее название (опять же, на голландском, но вы его получите)

enter image description here [1114 ]

  • Конечный продукт:

enter image description here

0
ответ дан JvdV 20 February 2019 в 23:22
поделиться
Другие вопросы по тегам:

Похожие вопросы: