我正在尝试这样做,以便我的主窗口将调整大小,使其向右扩展并使原始部分保持在原来相同的位置。现在,当我单击我的调整大小按钮时,它向左扩展,用它推出我的控件以为新空间腾出空间。我希望它向右扩展,以便它就像一个滑出窗口。新空间将显示已保存的项目ScrollView。
这就是我想要做的事情:
|---------------------|
|------Original-----|
|---------------------|
|-----------------------------------------------|
|------Original------| ---> New Space --|
|-----------------------------------------------|
现在它正在这样做:
|---------------------|
|------Original-------|
|---------------------|
|-----------------------------------------------|
|------Original-----| <-- New Space --|
|-----------------------------------------------|
将原件推到左边。
(我希望这会有所帮助,需要一段时间)
这是我的代码
NSRect resize;
int newWinWidth = 800;
int newWinHeight = 380;
resize = NSMakeRect([window frame].origin.x - (newWinWidth - (int)(NSWidth([window frame]))), [window frame].origin.y - (newWinHeight - (int)(NSHeight([window frame]))), newWinWidth, newWinHeight);
[window setFrame:resize display:YES animate:YES];`
也许我需要做的就是改变窗口的来源,但我无法弄清楚如何做到这一点。
提前致谢!
如果您需要更多信息或某些内容不明确,请询问任何内容。
答案 0 :(得分:0)
您可以从Interface Builder执行此操作,选择您的控件并在检查器窗口的“调整大小”选项卡中选择调整大小属性和约束(Interface Builder允许您在窗口/视图调整大小时查看控件行为的预览)
答案 1 :(得分:0)
问题是你正在更改窗口的来源。解决方案就是不这样做。保留原点相同并仅更改大小。
AppKit中的窗口起点从第一个屏幕框架的左下角到窗口框架的左下角计算。