zhucheyong 发表于 2021-11-12 11:26:30

请问大佬GMS怎么获得左上角右上角定位

<blockquote>Public Sub A3竖()代码如上↑最近学着写gms插件,给页面图形加个指定矩形,但是没法定位到想要位置。现在只能把矩形添加到图形的左下角,想实现矩形放置右上角,左上角,定位代码实验好几个实现不了LeftX TopY RightX BottomY




补充内容 (2021-11-12 12:10):
Public Sub A3竖()
' 定义一个形状对象
Dim s As Shape
Dim width, height
x = ActiveSelection.LeftX ' 横坐标
y = ActiveSelection.BottomY ' 纵坐标
width = 285 ' 宽度
height = 400 ' 高度
' 创建矩形
Set s = ActiveLayer.CreateRectangle2(x, y, width, height)

End Sub

jiangyu 发表于 2021-11-12 13:56:14

利用加减法吧
Public Sub A3竖()
' 定义一个形状对象
Dim s As Shape
Dim width, height
x = ActiveSelection.LeftX ' 横坐标
y = ActiveSelection.BottomY ' 纵坐标
dim a,b
a=ActiveSelection.width
b=ActiveSelection.height

width = 285 ' 宽度
height = 400 ' 高度
' 创建矩形
Set s = ActiveLayer.CreateRectangle2(x+a-width, y+b-height, width, height)'右上角

End Sub

zhucheyong 发表于 2021-11-12 16:13:47

jiangyu 发表于 2021-11-12 13:56
利用加减法吧
Public Sub A3竖()
' 定义一个形状对象


感谢给了思路,修改后完美实现了,给选中的图形加个指定尺寸的框框。
附上代码以供参考
Public Sub A3竖()
ActiveDocument.Unit = cdrMillimeter
' 定义单位mm
Dim s As Shape
Dim width, height, a, b
x = ActiveSelection.LeftX' 横坐标
y = ActiveSelection.BottomY ' 纵坐标
a = ActiveSelection.SizeWidth '当前图形宽度
b = ActiveSelection.SizeHeight '当前图形高度
width = 285 ' 自定义宽度
height = 400 ' 自定义高度
' 创建矩形
Set s = ActiveLayer.CreateRectangle2(x + a - width, y + b - height, width, height) '右上角
End Sub

页: [1]
查看完整版本: 请问大佬GMS怎么获得左上角右上角定位