登录
首页 >  Golang >  Go问答

在 Go Fyne 中如何使用 Grid 实现行和列布局?

来源:stackoverflow

时间:2024-02-25 14:30:19 161浏览 收藏

本篇文章给大家分享《在 Go Fyne 中如何使用 Grid 实现行和列布局?》,覆盖了Golang的常见基础知识,其实一个语言的全部知识点一篇文章是不可能说完的,但希望通过这些问题,让读者对自己的掌握程度有一定的认识(B 数),从而弥补自己的不足,更好的掌握它。

问题内容

我很难弄清楚按下按钮时如何返回网格的行和列。这里我有一个简单的 go 代码:

package main

import (
    "fyne.io/fyne/v2/app"
    "fyne.io/fyne/v2/container"
    "fyne.io/fyne/v2/widget"
)

func main() {
    a := app.New()
    w := a.NewWindow("Grid")
    content := container.NewGridWithColumns(3)
    for y := 0; y < 3; y++ {
        for x := 0; x < 3; x++ {
            btn := widget.NewButton("", nil) // returns row and col of the grid
            content.Add(btn)
        }
    }
    w.SetContent(content)
    w.ShowAndRun()
}

希望大家能帮忙:)


正确答案


由于函数是内联定义的,因此您可以简单地捕获变量。

for y := 0; y < 3; y++ {
        savedY := y
        for x := 0; x < 3; x++ {
            savedX := x
            btn := widget.NewButton("", 
                func() {
                    log.PrintLn(“Saved”, savedX, savedY)
                })
            content.Add(btn)
        }
    }

以上就是《在 Go Fyne 中如何使用 Grid 实现行和列布局?》的详细内容,更多关于的资料请关注golang学习网公众号!

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>