解决转发IP和端口显示异常的问题

This commit is contained in:
kony
2024-12-31 11:12:30 +08:00
parent 05840d460f
commit c8f798364b
3 changed files with 22 additions and 11 deletions

View File

@@ -18,6 +18,10 @@ func (n *ipEntry) Keyboard() mobile.KeyboardType {
return mobile.NumberKeyboard
}
func (n *ipEntry) ResetPlaceHolder() {
n.SetPlaceHolder("例如: 127.0.0.1")
}
func NewIpEntry(ip string) *ipEntry {
e := &ipEntry{}
e.ExtendBaseWidget(e)
@@ -28,7 +32,7 @@ func NewIpEntry(ip string) *ipEntry {
}
return errors.New("请输入正确的IP地址")
}
e.SetPlaceHolder("例如: 127.0.0.1")
e.ResetPlaceHolder()
e.SetText(ip)
return e
}

View File

@@ -18,8 +18,11 @@ func (n *portEntry) Keyboard() mobile.KeyboardType {
return mobile.NumberKeyboard
}
func (n *portEntry) ResetPlaceHolder() {
n.SetPlaceHolder("范围: 1024-65535")
}
func NewPortEntry(port string) *portEntry {
content := "范围: 1024-65535"
e := &portEntry{}
e.ExtendBaseWidget(e)
e.Validator = func(port string) error {
@@ -28,7 +31,7 @@ func NewPortEntry(port string) *portEntry {
}
return errors.New("请输入正确的端口号")
}
e.SetPlaceHolder(content)
e.ResetPlaceHolder()
e.SetText(port)
return e
}

View File

@@ -12,8 +12,6 @@ import (
)
type RemoteUI struct {
remote_ip2 string
remote_port2 string
box_remote_ip *ipEntry
box_remote_port *portEntry
radio *widget.RadioGroup
@@ -72,19 +70,25 @@ func NewRemoteUI(myWindow *fyne.Window, configInfo *config.ConfigInfo) *RemoteUI
c.radio.OnChanged = func(value string) {
switch value {
case "转发模式":
c.box_remote_ip.SetText(c.remote_ip2)
c.box_remote_ip.SetText(configInfo.RemoteIP)
c.box_remote_ip.Enable()
c.box_remote_port.SetText(c.remote_port2)
c.box_remote_port.SetText(configInfo.RemotePort)
c.box_remote_port.Enable()
default:
if c.box_remote_ip.Validate() == nil {
configInfo.RemoteIP = c.box_remote_ip.Text
}
c.box_remote_ip.SetText("")
c.box_remote_ip.ResetPlaceHolder()
c.box_remote_ip.Disable()
c.remote_ip2 = c.box_remote_ip.Text
c.box_remote_ip.SetText("不需要设置")
if c.box_remote_port.Validate() == nil {
configInfo.RemotePort = c.box_remote_port.Text
}
c.box_remote_port.SetText("")
c.box_remote_port.ResetPlaceHolder()
c.box_remote_port.Disable()
c.remote_port2 = c.box_remote_port.Text
c.box_remote_port.SetText("不需要设置")
}
}