Mario Checker
Mario Checker

Reputation: 43

How to increase font size in this GUI written in Go

I'm writing a simple GUI application with the https://github.com/lxn/walk/ library
I was wondering how I could increase the font size in the window generated by this code:

var inTE, outTE *walk.TextEdit

    MainWindow{
        Title:   "8-BALL",
        MinSize: Size{400, 300},
        Layout:  VBox{},
        Children: []Widget{
            HSplitter{
                Children: []Widget{
                    TextEdit{AssignTo: &inTE},
                    TextEdit{AssignTo: &outTE, ReadOnly: true},
                },
            },
            PushButton{
                Text: "CHIEDI",
                OnClicked: func() {
                    outTE.SetText(strings.ToUpper("EXAMPLE"))
                    inTE.SetText("")
                },
            },
        },
    }.Run()

If you know how to do it, tell me (I've already read the documentation but I couldn't find what I was looking for).

Upvotes: 0

Views: 1013

Answers (1)

arturwwl
arturwwl

Reputation: 1029

In MainWindow struct there is field Font. In this field you can specify font family, size and style.

So Your code with font family "Segoe UI" and font size 9p, should looks like:

var inTE, outTE *walk.TextEdit

MainWindow{
    Title:   "8-BALL",
    Font:     Font{Family: "Segoe UI", PointSize: 9},
    MinSize: Size{400, 300},
    Layout:  VBox{},
    Children: []Widget{
        HSplitter{
            Children: []Widget{
                TextEdit{AssignTo: &inTE},
                TextEdit{AssignTo: &outTE, ReadOnly: true},
            },
        },
        PushButton{
            Text: "CHIEDI",
            OnClicked: func() {
                outTE.SetText(strings.ToUpper("EXAMPLE"))
                inTE.SetText("")
            },
        },
    },
}.Run()

Also you can change font for specific widget, for example PushButton

var inTE, outTE *walk.TextEdit

MainWindow{
    Title:   "8-BALL",
    MinSize: Size{400, 300},
    Layout:  VBox{},
    Children: []Widget{
        HSplitter{
            Children: []Widget{
                TextEdit{AssignTo: &inTE},
                TextEdit{AssignTo: &outTE, ReadOnly: true},
            },
        },
        PushButton{
            Font:     Font{Family: "Segoe UI", PointSize: 9},
            Text: "CHIEDI",
            OnClicked: func() {
                outTE.SetText(strings.ToUpper("EXAMPLE"))
                inTE.SetText("")
            },
        },
    },
}.Run()

Upvotes: 1

Related Questions