增加键盘ui
This commit is contained in:
@@ -0,0 +1,58 @@
|
||||
package ui
|
||||
|
||||
import (
|
||||
"fyne.io/fyne/v2"
|
||||
"fyne.io/fyne/v2/container"
|
||||
"fyne.io/fyne/v2/widget"
|
||||
)
|
||||
|
||||
func keyButton(label string, entry *widget.Entry) *widget.Button {
|
||||
return widget.NewButton(label, func() {
|
||||
entry.Append(label)
|
||||
})
|
||||
}
|
||||
|
||||
func entButton(entry *widget.Entry) *widget.Button {
|
||||
return widget.NewButton("ENT", func() {
|
||||
entry.Append("\n")
|
||||
})
|
||||
}
|
||||
|
||||
func clearButton(label string, entry *widget.Entry) *widget.Button {
|
||||
return widget.NewButton(label, func() {
|
||||
entry.SetText("")
|
||||
})
|
||||
}
|
||||
|
||||
func newIPKeypad(entry *widget.Entry) fyne.CanvasObject {
|
||||
presets := container.NewHBox(
|
||||
keyButton("192.168.", entry),
|
||||
keyButton("169.254.", entry),
|
||||
keyButton("10.", entry),
|
||||
keyButton("100.", entry),
|
||||
)
|
||||
numpad := container.NewGridWithColumns(3,
|
||||
keyButton("1", entry), keyButton("2", entry), keyButton("3", entry),
|
||||
keyButton("4", entry), keyButton("5", entry), keyButton("6", entry),
|
||||
keyButton("7", entry), keyButton("8", entry), keyButton("9", entry),
|
||||
entButton(entry), keyButton("0", entry), keyButton(".", entry),
|
||||
keyButton("/", entry), keyButton("-", entry), clearButton("清空IP", entry),
|
||||
)
|
||||
return container.NewVBox(presets, numpad)
|
||||
}
|
||||
|
||||
func newPortKeypad(entry *widget.Entry) fyne.CanvasObject {
|
||||
presets := container.NewGridWithColumns(3,
|
||||
keyButton("1-65535", entry), keyButton("80;443", entry), keyButton("21", entry),
|
||||
keyButton("22", entry), keyButton("23", entry), keyButton("3389", entry),
|
||||
keyButton("445", entry), keyButton("25565", entry), keyButton("25;587", entry),
|
||||
)
|
||||
numpad := container.NewGridWithColumns(3,
|
||||
keyButton("1", entry), keyButton("2", entry), keyButton("3", entry),
|
||||
keyButton("4", entry), keyButton("5", entry), keyButton("6", entry),
|
||||
keyButton("7", entry), keyButton("8", entry), keyButton("9", entry),
|
||||
keyButton("0", entry), keyButton(";", entry), keyButton("-", entry),
|
||||
entButton(entry), clearButton("清空端口", entry),
|
||||
)
|
||||
return container.NewVBox(presets, numpad)
|
||||
}
|
||||
Reference in New Issue
Block a user