我正在尝试构建一个可调整大小的Carbon窗口作为教程的一部分。我在Snow Leopard 10.6.4上使用Interface Builder 3.2.3。
如果我创建一个空的Carbon项目并从库中添加一个窗口对象(在Inspector中选中Close,Minimize,Resize和Zoom按钮),运行Carbon Simulator然后尝试通过抓取调整大小来调整窗口大小控制,窗户消失了。
但是,如果我创建一个已包含窗口对象的Carbon项目(即不是在我第一次创建窗口后自己添加窗口的空项目),那么在这种情况下调整窗口大小没有问题。
我尝试在视觉上匹配检查器中的选项,以查看这两种情况的设置之间有何不同,但我不会注意到显示的两组参数之间存在任何差异。因此,我很好奇是否有更多设置没有显示在Inspector上。
在调整大小时,碳窗口是否有任何常见原因消失?
由于
答案 0 :(得分:0)
我注意到,如果未选中接收点击的选项,则当您尝试调整其大小时,窗口会消失。但我不知道你怎么能不小心取消检查。
答案 1 :(得分:0)
JWWalker,感谢您的回复。在两个版本上都检查了接收点击次数。
但我认为我能够(有点)找出检查.nib文件的差异。
两个文件都定义了两个键:maxSize(在com.apple.ibtool.document.localizable-all下)和gMaxSize(在com.apple.ibtool.document.objects下)。在工作文件中,这两个字符串都设置为{480,270}。在非工作文件中,他们的字符串设置为{0,0}。显然,工作文件的默认配置是将窗口的最大大小设置为零。在“检查器”中,“窗口模板大小”选项卡选中“最大大小”框,但“宽度”和“高度”均为“0”。我点击了一次该框以清除支票。再次运行碳模拟器,窗口正确调整大小而不会消失。当我重新检查框时,Inspector会自动填充宽度和高度参数,其有效值为480和270.我再次运行Carbon Simulator,并根据新的最大尺寸约束正确调整大小。
我不完全理解.nib文件中的XML代码,但显然窗口最大大小的默认设置被设置为零。不正确的代码出现在.nib文件中,如下所示(删除了非相关行):
com.apple.ibtool.document.localizable-所有
<dict>
<key>1</key>
<dict>
<key>maxSize</key>
<string>{0, 0}</string>
com.apple.ibtool.document.objects
<dict>
<key>1</key>
<dict>
<key>gMaxSize</key>
<string>{0, 0}</string>
答案 2 :(得分:0)
您必须取消选中窗口模板大小中的minimum size
和maximum size
或设置正确的值。