Go言語でQtのQLabelを使ってみるに引き続き、

QtのQLineEditを使って、入力フォームを作成してみる。

QLineEdit Class | Qt Widgets 5.11


package main

import (
	"os"

	"github.com/therecipe/qt/widgets"
)

func main() {

	app := widgets.NewQApplication(len(os.Args), os.Args)
	window := widgets.NewQMainWindow(nil, 0)
	window.SetMinimumSize2(400, 200)
	window.SetWindowTitle("LineEdit")

	widget := widgets.NewQWidget(nil, 0)
	boxLayout := widgets.NewQBoxLayout(3, nil)

	input := widgets.NewQLineEdit(nil)
	input.SetPlaceholderText("Please input number")
	boxLayout.AddWidget(input, 0, 0)

	widget.SetLayout(boxLayout)
	window.SetCentralWidget(widget)
	window.Show()
	app.Exec()

}

上記のPlaceholder(プレースホルダ)というのは、QLineEditの入力フォームに文字を打つ前にここが文字を打つ場所ですよということを表す為のもので、()内に表記したい文字を入力する。この場合は、数字を入力して下さいという意味にしたいので、"Please input number"と入れている。ちなみに、文字を入力すると、Placeholder内の文字が消える。

プレースホルダとは - IT用語辞典


後は、QLabelと同じように、AddWidgetでQBoxLayoutに追加する。