首页 > 其他分享 >fyne的border布局02

fyne的border布局02

时间:2024-06-21 18:29:47浏览次数:11  
标签:02 widget container nil fyne theme func border

border布局02

边框布局可能是最广泛用于构建用户界面的布局,因为它允许将项目定位在中心元素周围,而中心元素将扩展以填充空间。

实现如下一个界面布局:

在这里插入图片描述

实现代码如下:

package main

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

const welcomeMessage string = `
# Welcome

Welcome to the EdgeVPN gui. This is a simple utility to control EdgeVPN instances in your system.

This application can be safely closed. VPN connection will keep running in the background.
`

func main() {
	app := app.New()
	w := app.NewWindow("EdgeVPN")
	welcomeText := widget.NewRichTextFromMarkdown(welcomeMessage)

	addVPNbtn := widget.NewButtonWithIcon("Add VPN",
		theme.ContentAddIcon(),
		func() {})
	addVPNbtn.Importance = widget.HighImportance

	generateVPNbtn := widget.NewButtonWithIcon("Generate new VPN",
		theme.DocumentCreateIcon(),
		func() {})

	importVPNbtn := widget.NewButtonWithIcon("Import new VPN",
		theme.DownloadIcon(),
		func() {})

	downloadEdgeVPNbtn := widget.NewButtonWithIcon("Manage EdgeVPN versions",
		resources.GetResource(resources.EdgeVPNIcon, "manage"),
		func() {})

	noVPN := widget.NewLabel("No VPN found in the system!")

	aboutButton := widget.NewButtonWithIcon("About",
		theme.InfoIcon(),
		func() {})

	w.SetContent(
		container.NewBorder(
			welcomeText,
			nil,
			nil,
			nil,
			container.NewCenter(container.NewGridWithColumns(
				1,
				noVPN, addVPNbtn, generateVPNbtn, importVPNbtn, downloadEdgeVPNbtn,
				aboutButton,
			)),
		),
	)
	w.Resize(fyne.NewSize(640, 640))

	w.Show()
	app.Run()

}

使用了3种container进行组合。

还可以使用如下container,效果是一样的:

w.SetContent(
	container.NewBorder(
		welcomeText,
		nil,
		nil,
		nil,
		container.NewCenter(container.NewVBox(
			noVPN, addVPNbtn, generateVPNbtn, importVPNbtn, downloadEdgeVPNbtn,
			aboutButton,
		)),
	),
)

标签:02,widget,container,nil,fyne,theme,func,border
From: https://blog.csdn.net/shulu/article/details/139867719

相关文章

  • 布尔约束传播蕴含图绘制-2024-6-21
      1.gml格式蕴含图格式的获取(1)在主函数main的代码中增加设置外部输出文件通道——打开、结束前、关闭三个函数的调用。参考所涉及的代码:1parseOptions(argc,argv,true);23SimpSolverS;4doubleinitial_time......
  • 强化学习(Reinforcement Lrarning,RL)02:马尔科夫决策过程
    强化学习(ReinforcementLrarning,RL)02:马尔科夫决策过程强化学习(ReinforcementLrarning,RL)02:马尔科夫决策过程状态与状态空间动作与动作空间策略函数状态转移与状态转移函数奖励轨迹回报与折扣回报一个重要性质强化学习(ReinforcementLrarning,RL)02:马尔科夫决策过程马......
  • Windows Server 2025 中文版、英文版下载 (Inside Preview, updated Jun 2024) - 下一
    WindowsServer2025中文版、英文版下载(InsidePreview,updatedJun2024)-下一代Windows11ServerWindowsServer2025正式版发布在即请访问原文链接:https://sysin.org/blog/windows-server-2025/,查看最新版。原创作品,转载请保留出处。作者主页:sysin.org我们知道W......
  • Windows Server 2022 OVF, updated Jun 2024 (sysin) - VMware 虚拟机模板
    WindowsServer2022OVF,updatedJun2024(sysin)-VMware虚拟机模板2024年6月版本更新,现在自动运行sysprep,支持ESXiHostClient部署请访问原文链接:https://sysin.org/blog/windows-server-2022-ovf/,查看最新版。原创作品,转载请保留出处。作者主页:sysin.org现在......
  • Zyxel NAS设备的CVE-2024-29973远程代码执行漏洞验证
    概述最近,ZyxelNAS设备曝出了一个重大安全漏洞(CVE-2024-29973),该漏洞允许远程攻击者在受影响的设备上执行任意代码。这一漏洞已经被广泛关注,并被证实可以在实际中复现。本文将详细介绍该漏洞的成因、利用方式以及如何检测和防御这种攻击。漏洞成因ZyxelNAS设备中存在一个不安......
  • Windows Server 2019 OVF, updated Jun 2024 (sysin) - VMware 虚拟机模板
    WindowsServer2019OVF,updatedJun2024(sysin)-VMware虚拟机模板2024年6月版本更新,现在自动运行sysprep,支持ESXiHostClient部署请访问原文链接:https://sysin.org/blog/windows-server-2019-ovf/,查看最新版。原创作品,转载请保留出处。作者主页:sysin.orgWindo......
  • Windows Server 2022 中文版、英文版下载 (updated Jun 2024)
    WindowsServer2022中文版、英文版下载(updatedJun2024)WindowsServer2022x64,Version21H2请访问原文链接:https://sysin.org/blog/windows-server-2022/,查看最新版。原创作品,转载请保留出处。作者主页:sysin.org直接上链接,详细说明请访问原文查看。下载地址Window......
  • 2023年天津大学图像工程课程设计 基于 OpenCV 、 Qt 库的图像处理软件+源代码+文档说
    文章目录源码下载地址项目介绍项目功能界面预览项目备注源码下载地址源码下载地址点击这里下载代码项目介绍图像工程课程设计基于OpenCV、Qt库实现的图像处理软件大学编程作业(TUST天津科技大学2023年)图像工程课程设计基于OpenCV、Qt库实现的图像处......
  • Windows Server 2008 R2 OVF, updated Jun 2024 (sysin) - VMware 虚拟机模板
    WindowsServer2008R2OVF,updatedJun2024(sysin)-VMware虚拟机模板WindowsServer2008R2简体中文版OVF,2024年6月更新请访问原文链接:https://sysin.org/blog/windows-server-2008-r2-ovf/,查看最新版。原创作品,转载请保留出处。作者主页:sysin.orgWindowsSe......
  • 2024-06-21 我允许的今日练习 对自己抗拒的都允许
    2024-06-21我允许我失败。我允许我赚不到钱。我允许我退缩。我允许我遇到一点挫折就退回原地。我允许我原地踏步。我允许我上瘾。我允许我无法自拔。我允许我晚睡。我允许我放不下手机。我允许我房间很乱。我允许我不收拾。我允许我懒惰。我允许我想做的事就是没有做。我允许我拖......