OC代码怎么理解CGRect frame = self.iconButton.frame

OC代码怎么理解CGRect frame = self.iconButton.frame,第1张

您好,这条语句的意思是,将iconButon的frame数据(CGRect类型)赋值给一个名为frame的变量

通俗的说,就是将iconButton的宽高和相对于父视图的坐标,赋值给另一个可以访问的变量

CGRect是OC中的一种类型,是您自己创建的(声明了一个CGRect类型的变量)

CGRect frame的意思就是声明了一个名为frame的CGRect类型的变量

等号右边是点语法,点语法可以有多个点来嵌套,这句话的意思就是访问当前页面中iconButton的frame属性

其实frame(iconButton的frame)您就可以直接理解为该控件的宽高和坐标的一个集合,只是用特殊的方式表现出来了而已

这句话之所以让您感到疑惑,就是因为CGRect类型的变量名和后面iconButtonframe属性同名了,实际上CGRect类型的变量您可以随便命名,但是iconButton的frame是属性,是不可更改的

这句话的用意就是得到iconButton的坐标和宽高信息,然后您可以通过修改CGRect类型的frame的值再反过来赋值给iconButton就可以改变iconButton的宽高和坐标

比如您输入以下代码

CGRect frame = selficonButtonframe;

frameoriginx = 120;//修改frame的x坐标

frameoriginy = 220;//修改frame的y坐标

framesizeheight = 80;//修改frame的高度

framesizewidth = 60;//修改frame的宽度

//请注意,这是最重要的一步,您需要将修改完毕的frame变量反过来赋值给iconButton的frame

selficonButtonframe = frame//将修改完毕的frame变量反过来赋值给iconButton

//˙这样的话iconButton的宽高就会被修改成60和80,相对父视图的x和y坐标也会赋值为120和220

//您可能会问,为什么不用selficonButtonframeoriginx = 20;这种方法来直接赋值呢?

//这是因为selficonButtonframe之后的属性是只读的,您不能单独修改其中的一个,只能整体修改,所以哪怕您只是修改一下iconButton的sizeheight这一个属性,也要设置一个CGRect类型的变量去先接收整个iconButton的frame,再只修改其中的sizeheight这一个属性,再反过来赋值给iconButton的frame, *** 作才能生效,否则系统会认为是非法 *** 作而报错

获取上面的按钮?可以使用Find和按钮名称来得到,比如查找名为button1的按钮,代码如下:

Control[] controls=thispanel1ControlsFind("button1",false);

//controls[0]就是要找的按钮

//现在就可以 *** 作它了

//其它的控件也可以

希望对你有帮助,有疑问请追问或是Hi

要使用JavaScript选择单选按钮的状态,需要选中单选按钮对象的checked属性,本篇文章介绍的就是使用JavaScript获取单选按钮的选择状态的方法。

可以从名称获取文本框和复选框的控件,但是对于单选按钮,如果将其设置为相同的单选按钮组,则不能使用从名称获取,因为名称的值相同。我们将从之前介绍的ID中检查选择状态。

以上就是关于OC代码怎么理解CGRect frame = self.iconButton.frame全部的内容,包括:OC代码怎么理解CGRect frame = self.iconButton.frame、请问C#中我在一个panel控件中添加了ABCD四个按钮,后台代码怎么获取这个panel的值,panel.items.吗、前端,如何获取选择文件的那个按钮等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9688340.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-01
下一篇2023-05-01

发表评论

登录后才能评论

评论列表(0条)

    保存