我的编程空间,编程开发者的网络收藏夹
学习永远不晚

golang fyne gui 无法调整列表大小

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

golang fyne gui 无法调整列表大小

问题内容

我正在尝试调整此(列表)的大小,因为它只显示一行,第二个看到它需要向下滚动我想显示多行,这是代码:-

"fyne.io/fyne/v2/app"
    "fyne.io/fyne/v2/container"
    "fyne.io/fyne/v2/widget"
type CustomList struct {
    Header fyne.CanvasObject
    List   *widget.List
}
    a := app.New()

    // Create a new window
    w := a.NewWindow("Resources Manager")

    // Create a list with five columns
    list = widget.NewList(
        func() int {
            return len(clientInfos)
        },
        func() fyne.CanvasObject {
            return container.NewHBox(widget.NewIcon(nil), widget.NewLabel(""))
        },
        func(index int, obj fyne.CanvasObject) {
            c := obj.(*fyne.Container)
            icon := c.Objects[0].(*widget.Icon)
            label := c.Objects[1].(*widget.Label)

            // load the image resource
            img, err := fyne.LoadResourceFromPath(clientInfos[index].Country)
            if err != nil {
                fmt.Println("Failed to load image", err)
                return
            }

            // set image to icon and text to label
            icon.SetResource(img)
            label.SetText(fmt.Sprintf("%s | %s | %s | %s | %s",
                clientInfos[index].AppName,
                clientInfos[index].Version,
                clientInfos[index].kerenl,
                clientInfos[index].Price,
                clientInfos[index].Size,
            ))
            label.TextStyle = fyne.TextStyle{Bold: true, Italic: false, Monospace: true}
        },
    )
    list.OnSelected = func(id int) {
        selectedID = id
    }
    customList := &CustomList{
        Header: widget.NewLabel("Icon | AppName | kerenl | Price | Size | Status"),
        List:   list,
    }
    customList.List.Resize(fyne.Size{Height: 434})
    // Create a container for the buttons
    buttonContainer := container.NewVBox()

    buttonContainer.Add(widget.NewButton("Install", func() {
        // Handle button click
    }))
    buttonContainer.Add(widget.NewButton("download", func() {
        // Handle button click
    }))
    buttonContainer.Add(widget.NewButton("Upgrade", func() {
        // Handle button click
    }))
    buttonContainer.Add(widget.NewButton("Refresh", func() {
            list.Refresh()

        // Handle button click
    }))
    buttonContainer.Resize(fyne.NewSize(230, 300))
    vbox := container.NewVBox(
        customList.Header,
        customList.List,
    )
    vbox.Resize(fyne.NewSize(600, 320))


    
    horizontalSplit := container.NewHSplit(vbox, buttonContainer)
    horizontalSplit.SetOffset(0.8)

    content := container.NewVBox(horizontalSplit, textArea)

    w.SetContent(content)

    w.Resize(fyne.NewSize(800, 270))

    w.ShowAndRun()

还有其他用于 gui 的 Golang 库吗?因为看起来大多数都已经过时了,对吗?然而,我真的需要一些更简单的东西来构建一个 GUI,比如


正确答案


在 fyne 中,小部件被放入容器中,并且该容器通常具有布局。如果您进行了此设置,那么您对 ​​Resize 的手动调用将被所选布局覆盖。 VBox 的使用正是这样做的,因为它的算法希望使每个项目尽可能短。 请改用边框,标题位于顶部,列表占用剩余空间。

Fyne 中的对象总是填充分配给它们的空间,但要使其执行您想要的操作,选择正确的容器/布局非常重要。 https://www.php.cn/link/4d6ce445727ef59cc07abb95d3e4a1d4

以上就是golang fyne gui 无法调整列表大小的详细内容,更多请关注编程网其它相关文章!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

golang fyne gui 无法调整列表大小

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

golang fyne gui 无法调整列表大小

问题内容我正在尝试调整此(列表)的大小,因为它只显示一行,第二个看到它需要向下滚动我想显示多行,这是代码:-"fyne.io/fyne/v2/app""fyne.io/fyne/v2/container""fyne.io/fyne/v2
golang fyne gui 无法调整列表大小
2024-02-06

win10字体大小无法调整如何解决

这篇文章主要介绍了win10字体大小无法调整如何解决的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇win10字体大小无法调整如何解决文章都会有所收获,下面我们一起来看看吧。win10字体大小无法调整的解决方法:
2023-07-01

win7窗口无法调整大小如何解决

本文小编为大家详细介绍“win7窗口无法调整大小如何解决”,内容详细,步骤清晰,细节处理妥当,希望这篇“win7窗口无法调整大小如何解决”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。win7窗口无法调整大小解决方
2023-07-01

linux无损调整分区大小的方法是什么

Linux无损调整分区大小的方法有两种:使用GParted图形界面工具和使用命令行工具fdisk。以下是具体步骤:使用GParted图形界面工具:1. 安装GParted:在终端中运行sudo apt-get install gparted
2023-09-28

如何解决虚拟机窗口大小无法调整的问题

如果虚拟机窗口大小无法调整,有几种可能的解决方法:重新启动虚拟机:有时候重新启动虚拟机可以解决窗口大小无法调整的问题。检查虚拟机设置:确保虚拟机的显示设置正确,尤其是显示适配器和分辨率设置。调整这些设置可能会解决窗口大小无法调整的问题。更新
如何解决虚拟机窗口大小无法调整的问题
2024-06-10

dedecms 添加字段后软件列表页无法调用软件大小问题的解决方法

提出问题:为什么在软件列表页(list_soft.htm)利用[field:softsize/]调用编程客栈不出软件大小呢? http://www.cppcns.com 如下图示:看见了吗?《软件大小:》后的大小数字没调用出来。代码如下:
2022-06-12

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录