Flutter 获取某个控件的坐标

1.首先先需要对控件进行渲染

初始化GlobalKey :GlobalKey anchorKey = GlobalKey();

2.在需要测量的控件的下面添加key:

child: Text("点击弹出悬浮窗",
style: TextStyle(fontSize: 20),
key: anchorKey
),
3.获取控件的坐标:

RenderBox renderBox = anchorKey.currentContext.findRenderObject();
var offset = renderBox.localToGlobal(Offset.zero);
控件的横坐标:offset.dx

控件的纵坐标:offset.dy

如果想获得控件正下方的坐标:

RenderBox renderBox = anchorKey.currentContext.findRenderObject();
var offset = renderBox.localToGlobal(Offset(0.0, renderBox.size.height));
   控件下方的横坐标:offset.dx

控件下方的纵坐标:offset.dy
————————————————
版权声明:本文为CSDN博主「笨鸟不飞 ≧0≦」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/baidu_34120295/article/details/86495861

原文地址:https://www.cnblogs.com/azhe35/p/12309198.html

时间: 2024-09-27 04:28:14

Flutter 获取某个控件的坐标的相关文章

获取控件的坐标

var s = PointToScreen(txt1.Location); 获取控件的坐标 var s = PointToScreen(控件名.Location); txt1中txtbox控件名 获取控件的坐标

获取IE (控件)的所有链接(包括Frameset, iframe)

获取IE (控件)的所有链接(包括Frameset, iframe) IE 顶层 body 节点通过IHTMLElement->get_all 方法无法获取iframe 里面的节点列表 CComPtr<IHTMLElement> body; CComPtr<IDispatch> spDispCollection;body->get_all(&spDispCollection); 所以要获取iframe/frame(frameset) 里面的节点列表的话, 则需要

WPF:获取DataGrid控件单元格DataGridCell

转载:http://blog.csdn.net/jhqin/article/details/7645357 /* ---------------------------------------------------------- 文件名称:DataGridPlus.cs 作者:秦建辉 MSN:[email protected] QQ:36748897 博客:http://blog.csdn.net/jhqin 开发环境: Visual Studio V2010 .NET Framework 4

winfrom获取用户控件里的控件对象

如何获取用户控件里的控件对象呢,其实思路也是很简单的, 比如有一个panel 用户控件 里面有许多的其他控件. 那么要找出一个Label控件怎么找呢,好的.现在我们就开始 首先,一个foreach循环获得所有控件. 然后根据类型筛选出这个类型的所有控件.然后就可以用Name来判断了 foreach(var lb in mi_image1.Controls) {    if (lb is Label)    {         Label obj = lb as Label;   //如果把循环改

Selenium IDE安装和检查获取的控件路径技巧

来源:http://www.jianshu.com/p/0ea2dc83549f 从学习Selenium 开始,都是自己写脚本,后来得知有个插件Selenium IDE可以录制脚本,也懒得用了,觉得自己写脚本挺好. 今天看别人的博客,发现Selenium IDE可以检查获取的控件路径是否正确不用通过执行程序的方式来校验,很直接,省去了执行程序的繁琐,特此学习一下. 环境:firefox浏览器,firebug插件,selenium IDE插件场景:通过Selenium IDE检测获取的百度首页中搜

JS获取时间控件

引用JS文件: <script src="../js/my97/WdatePicker.js" type="text/javascript"></script> <script> function chkAddAction(){ var starttime = $.trim($('#starttime').val()); var endtime= $.trim($('#endtime').val()); if(starttime

Asp.Net 获取FileUpload控件的文件路径、文件名、扩展名

string fileNameNo = Path.GetFileName(FileUploadImg.PostedFile.FileName); //获取文件名和扩展名string DirectoryName = Path.GetDirectoryName(FileUploadImg.PostedFile.FileName); //获取文件所在目录string Extension = Path.GetExtension(FileUploadImg.PostedFile.FileName); //

平台记录部件获取输入控件(Field)

获取输入控件(Field):获取记录部件上某个字段的控件对象 实例应用:新建一个窗体拖入记录部件并绑定一个业务表,在窗体功能管理中新增一个"获取输入控件(Field)"功能,具体代码如下: 运行效果: 原文地址:http://bbs.delit.cn/thread-1087-1-1.html 转载请注明出处: 撰写人:度量科技http://www.delit.cn

关于cocos2d-x 获取ui 控件 为NULL的注意事项

cocos2d-x可以用cocos studio制作静态页面,当我们在代码中操作控件时,就需要用api获取控件来进行操作.对于新手来说,获取控件会出现一些莫名其妙的错误导致程序崩溃,这里主要说一下 获取控件为 NULL 可能出错的地方. 获取ui 控件有两种方式(本人目前只知道两种): 1.通过 父节点->getChildByName("控件名“) 层层获取,这种方法在获取子节点的子节点时,稍显繁琐,可用第二种方式. 2.通过 cocos2d::ui::Helper::seekWidget