登录
首页 >  Golang >  Go问答

让 Fyne 弹出菜单出现在鼠标位置

来源:stackoverflow

时间:2024-04-17 17:09:33 306浏览 收藏

各位小伙伴们,大家好呀!看看今天我又给各位带来了什么文章?本文标题《让 Fyne 弹出菜单出现在鼠标位置》,很明显是关于Golang的文章哈哈哈,其中内容主要会涉及到等等,如果能帮到你,觉得很不错的话,欢迎各位多多点评和分享!

问题内容

我被困在获取鼠标的位置上。我想在鼠标的位置显示 fyne 弹出菜单,但无法弄清楚。

这是我使用弹出窗口的方法:

menuItem1 := fyne.NewMenuItem("A", nil)
menuItem2 := fyne.NewMenuItem("B", nil)
menuItem3 := fyne.NewMenuItem("C", nil)
menu := fyne.NewMenu("File", menuItem1, menuItem2, menuItem3)

popUpMenu := widget.NewPopUpMenu(menu, window.Canvas())

popUpMenu.ShowAtPosition(*Expect mouse position here*)
popUpMenu.Show()

我希望将鼠标位置作为 fyne 位置放置在上述位置。但我不知道从哪里可以获得鼠标/光标位置。

这样,弹出窗口始终固定在应用程序的左上角。


解决方案


PointEvent 被传递到实现交互接口的方法中。按钮 OnTapped 隐藏这些详细信息,因为通常不需要它们。

正如一些评论中所建议的,您应该扩展您想要响应的小部件,就像 fyne_demo 中的按钮在这一行周围所做的那样:https://github.com/fyne-io/fyne/blob/c29a0624ed96ba1b8f45d903b6941824d50e0502/cmd/fyne_demo/tutorials/widget.go#L359

实现Tapped(e *fyne.PointEvent)是关键。

理论要掌握,实操不能落!以上关于《让 Fyne 弹出菜单出现在鼠标位置》的详细介绍,大家都掌握了吧!如果想要继续提升自己的能力,那么就来关注golang学习网公众号吧!

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>