如何解决在Gtk.Entry的光标处显示Gtk.Popover
我想在Gtk.Popover
的光标位置显示一个Gtk.Entry
。我只能添加相对于条目本身的弹出框,但是Gtk.Popover
每次都出现在Gtk.Entry
的中心。
有没有办法获取我的Gtk.Entry
光标的位置并在该位置创建弹出框?
解决方法
您应该使用Gtk.Popover.relative_to
来设置弹出框所相对的窗口小部件;那么您可以使用Gtk.Popover.pointing_to
和带有光标位置的矩形。为此,请使用Gtk.Entry.cursor_position
来检索光标的字符索引,并将其转换为Gtk.Entry
小部件的Pango.Layout中的位置;如果允许滚动该条目,则还应该获取Gtk.Entry.scroll_offset
并将其从Pango返回的坐标中减去。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。