package views import ( "fyne.io/fyne/v2" "fyne.io/fyne/v2/container" "fyne.io/fyne/v2/widget" "sort" ) // allCreateCards 创建卡片列表 func allCreateCards(_ fyne.Window) fyne.CanvasObject { var itemList []fyne.CanvasObject keys := make([]string, 0, len(cardTypeMap)) for key := range cardTypeMap { keys = append(keys, key) } sort.Strings(keys) for _, key := range keys { info := cardTypeMap[key] if info.createView != nil { itemList = append(itemList, widget.NewButton(info.Name, func() { cWin := fyne.CurrentApp().NewWindow(info.Name) cWin.SetContent(info.createView(cWin)) cWin.Resize(info.createSize) cWin.CenterOnScreen() cWin.Show() })) } } return container.NewCenter(container.NewVBox(itemList...)) }