Go语言 如何添加填充,字体大小和颜色到fyne UI应用程序

dsf9zpds  于 2022-12-07  发布在  Go
关注(0)|答案(2)|浏览(440)

我有这个示例应用程序代码下面的一个UI,我正在实现使用fyne工具包,不能弄清楚如何对齐按钮向左,使顶部文本更大,并添加颜色。
我试着创建一个自定义主题来实现我需要的UI特性,但是我对fyne工具包的godoc缺乏了解。有没有什么文档可以让我做这个工作?或者给我一些提示,因为这个工具包的文档很差
这是我的示例应用程序代码

package main

import (
    "fyne.io/fyne"
    "fyne.io/fyne/app"
    "fyne.io/fyne/layout"
    "fyne.io/fyne/theme"
    "fyne.io/fyne/widget"
)

func main() {
    a := app.New()
    a.Settings().SetTheme(theme.LightTheme())
    w := a.NewWindow("myapp")
    w.Resize(fyne.NewSize(340, 600))
    w.SetContent(widget.NewVBox(
        widget.NewLabelWithStyle("myApp version1", fyne.TextAlignLeading, fyne.TextStyle{Bold: true}),
        widget.NewLabelWithStyle("Welcome to \n myAPp", fyne.TextAlignLeading, fyne.TextStyle{Bold: true}),
        layout.NewSpacer(),
        widget.NewButton("Register", func() {
            a.Quit()
        }),
        widget.NewButton("Login", func() {
            a.Quit()
        }),
    ))
    w.ShowAndRun()
}
2izufjch

2izufjch1#

你不能做这些事情开箱即用,但你可以使用canvas从Fyne。例如:

带颜色的标签:

label := canvas.NewText("Hello world", color.White)

具有不同字体大小的标签:

label := canvas.NewText("Hello world", color.White)
label.TextSize = 50

与VBox右对齐:

layout := fyne.NewContainerWithLayout(
    layout.NewVBoxLayout(),
    layout.NewSpacer(),
    widget.NewLabel("Hello world"),
)
kgsdhlau

kgsdhlau2#

要以不同的方式对齐按钮,您需要使用不同的布局(VBox使用Box布局)。
无法更改标准小工具的颜色和大小。您可以在自定义主题中指定不同的文本颜色或大小,但它将应用于所有组件。如果您希望屏幕上的元素不符合主题,您可以使用“canvas”包,因为它处理较低级别的元素。例如canvas。文本可以是任何大小或颜色。

相关问题