Objective c 从底部调整车窗高度?
假设我有一个名为Objective c 从底部调整车窗高度?,objective-c,cocoa,frame,nswindow,Objective C,Cocoa,Frame,Nswindow,假设我有一个名为mWindow的窗口。要增加高度,我将对框架执行以下操作: NSRect windowFrame = [mWindow frame]; windowFrame.size.height += 100.0f; [mWindow setFrame:windowFrame]; 但是,这会增加窗口顶部的高度,而不是底部的高度。如何使其在底部而不是顶部添加更多窗口?由于坐标在Cocoa中的工作方式,您必须执行一些额外的步骤才能使其工作: NSRect windowFrame = [mWi
mWindow
的窗口。要增加高度,我将对框架执行以下操作:
NSRect windowFrame = [mWindow frame];
windowFrame.size.height += 100.0f;
[mWindow setFrame:windowFrame];
但是,这会增加窗口顶部的高度,而不是底部的高度。如何使其在底部而不是顶部添加更多窗口?由于坐标在Cocoa中的工作方式,您必须执行一些额外的步骤才能使其工作:
NSRect windowFrame = [mWindow frame];
windowFrame.size.height += 100;
windowFrame.origin.y -= 100;
[mWindow setFrame:windowFrame display:YES];
或者,您可以使用NSWindow的
setFrameOrigin:
或setFrameTopLeftPoint:
方法。您可以始终相应地调整原点,即将其调高并向下移动。我使用此代码段。您必须根据偏移量调整原点y
func change(height: CGFloat) {
var frame = window.frame
let offset = height - frame.size.height
frame.size.height += offset
frame.origin.y -= offset
window.setFrame(rect, display: true)
}
这就是我要找的。谢谢,我接受你的回答。