Грифон: Как открыть новое окно с основного вида?

Вопрос:

Я новичок в гриффоне и пытаюсь разработать приложение для грифонов. Я хочу открыть вторичное окно из главного окна. Когда “следующая” кнопка нажата, вторичное окно должно быть открытым.

config.properties

application.title = Installation Wizard

application.startupGroups = mainWindow

application.autoShutdown = true

mvcGroups.mainWindow.model = com.install.gui.MainGuiModel

mvcGroups.mainWindow.view = com.install.gui.MainGuiView

mvcGroups.mainWindow.controller = com.install.gui.MainGuiController

mvcGroups.secondaryWindow.model = com.install.gui.SecondaryGuiModel

mvcGroups.secondaryWindow.view = com.install.gui.SecondaryGuiView

mvcGroups.secondaryWindow.controller = com.install.gui.SecondaryController

MainGuiController.java:

@ArtifactProviderFor(GriffonController.class)
public class MainGuiController extends AbstractGriffonController {

private MainGuiModel model;

public void setModel(MainGuiModel model) {

this.model = model;

}

@Threading(Threading.Policy.INSIDE_UITHREAD_ASYNC)

public void click() {

model.setClickCount(model.getClickCount() + 1);

getApplication().getWindowManager().show("secondaryWindow");

}

}

когда щелкнул следующую кнопку, метод click запускается. Увеличивается метка счета кликов. Но вторая строка, которая используется для открытия вторичного окна, не работает.

Ответ №1

Вы должны создать экземпляр secondaryWindow MVCGroup первым. Предполагая, что SecondaryWindowView определяет этап/окно, прикрепленное к WndowManager используя имя окна secondaryWindow тогда следующее должно работать

public void click() {
createMVCGroup("secondaryWindow");
getApplication().getWindowManager().show("secondaryWindow");
}

Оцените статью
TechArks.Ru
Добавить комментарий