package ui import ( "image/color" "time" "fyne.io/fyne/v2" "fyne.io/fyne/v2/canvas" "fyne.io/fyne/v2/dialog" "fyne.io/fyne/v2/driver/desktop" fyne_storage "fyne.io/fyne/v2/storage" "fyne.io/fyne/v2/widget" ) // 显示Tip func ShowTip(content string) { drv := fyne.CurrentApp().Driver() if drv, ok := drv.(desktop.Driver); ok { w := drv.CreateSplashWindow() w.SetContent(widget.NewLabelWithStyle(content, fyne.TextAlignCenter, fyne.TextStyle{})) w.Show() go func() { time.Sleep(time.Millisecond * 1500) w.Close() }() } } func ShowCanvasTip(content string) { drv := fyne.CurrentApp().Driver() if drv, ok := drv.(desktop.Driver); ok { w := drv.CreateSplashWindow() w.SetContent(canvas.NewText(content, color.RGBA{255, 0, 0, 255})) w.Show() go func() { time.Sleep(time.Millisecond * 1500) w.Close() }() } } // 打开目录 func OpenFolder(entry *widget.Entry, w fyne.Window) { dConf := dialog.NewFolderOpen(func(lu fyne.ListableURI, err error) { if lu == nil { return } entry.Text = lu.Path() entry.Refresh() }, w) luri, _ := fyne_storage.ListerForURI(fyne_storage.NewFileURI(".")) dConf.SetLocation(luri) dConf.SetConfirmText("打开") dConf.SetDismissText("取消") dConf.Resize(fyne.NewSize(750, 500)) dConf.Show() } func OpenFile(entry *widget.Entry, w fyne.Window) { dConf := dialog.NewFileOpen(func(lu fyne.URIReadCloser, err error) { if lu == nil { return } entry.SetText(lu.URI().Path()) entry.Refresh() }, w) dConf.SetConfirmText("打开") dConf.SetDismissText("取消") dConf.SetFilter(fyne_storage.NewExtensionFileFilter([]string{".json"})) dConf.Resize(fyne.NewSize(750, 500)) dConf.Show() }