Как изменить размер поля ввода в fyne

# #go #fyne

Вопрос:

Мне нужна ваша помощь, чтобы изменить размер виджета fine в моем приложении, у меня есть следующее:

 middleLines := container.NewHBox(app.ListLines, linesDetails)
middleLines.Resize(fyne.NewSize(1000, 10000))

containerLines := container.New(layout.NewBorderLayout(toolbarLines, nil, middleLines, nil), toolbarLines, middleLines)middleCase := container.NewHBox(app.ListCases, casesDetails)
    containerCases := container.New(layout.NewBorderLayout(toolbarCases, nil, middleCase, nil), toolbarCases, middleCase)
    tabs := container.NewAppTabs(
        container.NewTabItem("Lines", containerLines),
        container.NewTabItem("Cases", containerCases),
    )

 

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

Как я могу изменить размер этих текстовых полей и списка?

Ответ №1:

Размер виджета зависит от компоновки контейнера, поэтому вызов вручную Resize не будет иметь эффекта. Видишь https://developer.fyne.io/faq/layout

Вы размещаете middleLines в левом элементе макета границы (параметры макета: верхний, нижний, левый, правый) — края всегда сжимаются, чтобы центр мог расширяться. Если вы удалите его из left параметра, он расширится в центре, чтобы заполнить пространство.

Комментарии:

1. » расположение сверху, снизу, слева, справа » … и все, что после этого будет размещено в центре. Также я думаю, что важно отметить, что если вы, например, обернете виджет ввода в макет h-box, это помешает ему занять все свободное пространство в центре макета границы.