我在窗口底部有一個NSTextField控件。 我需要根據某些條件顯示或隱藏。如何在隱藏或顯示控件後重新繪製窗口
在初始狀態下,控件被隱藏。 窗口顯示控件位置上的空白區域。 在運行時,控制應該變爲可見
mpTxtCtrl.hidden = NO;
它不會發生。
任務:
1顯示/隱藏控制。
2根據控件的狀態調整主窗口的大小。
我找不到任何教程如何管理可可中的佈局。 我會很感激任何幫助!
我在窗口底部有一個NSTextField控件。 我需要根據某些條件顯示或隱藏。如何在隱藏或顯示控件後重新繪製窗口
在初始狀態下,控件被隱藏。 窗口顯示控件位置上的空白區域。 在運行時,控制應該變爲可見
mpTxtCtrl.hidden = NO;
它不會發生。
任務:
1顯示/隱藏控制。
2根據控件的狀態調整主窗口的大小。
我找不到任何教程如何管理可可中的佈局。 我會很感激任何幫助!
檢查這個代碼,如果你會發現一些有用的東西here:
-(void)awakeFromNib{
[self.label setHidden:YES];
}
- (IBAction)showHide:(id)sender {
NSLog(@"%@",[sender title]);
if ([[sender title] isEqualToString:@"Hide"]) {
[self.label setHidden:YES];
[sender setTitle:@"Show"];
}
else if ([[sender title] isEqualToString:@"Show"]){
[self.label setHidden:NO];
[sender setTitle:@"Hide"];
}
}
- (IBAction)maximize:(id)sender {
NSArray *screens = [NSScreen screens];
NSRect screenRect;
for (NSInteger index=0; index < [screens count]; index++) {
NSScreen *screen = screens[index];
screenRect = [screen visibleFrame];
}
[self.window setFrame:screenRect display:YES];
}
那麼,什麼是提問者的問題,以及這段代碼如何解決它? – 2013-03-18 10:30:19
@PeterHosey:他需要在運行時隱藏/顯示控件。甚至可以調整窗口大小。 – 2013-03-18 10:34:32
這是他的目標,而不是他實現這個目標的問題。 – 2013-03-18 10:38:22
當運行控制應成爲可見
mpTxtCtrl.hidden = NO;
它不會發生。
確保將mpTxtCtrl
插座連接到筆尖的文本字段。忘記將你的插座連接到任何東西都是沒有任何事情發生的主要原因。
我找不到任何教程如何管理可可中的佈局。
編輯筆尖時切換到文件檢查器並打開「使用自動佈局」。無論何時沿着Aqua指南放置視圖(正確放置和調整視圖大小時出現藍線),Xcode都會創建約束,而Cocoa會在視圖大小和窗口大小發生變化時強制執行這些約束。
更多信息:
彼得,謝謝你的回答。我將更詳細地研究擬定的指導方針,我認爲他們會幫助我。 – kaa 2013-03-18 10:57:01
是否使用自動佈局? – 2013-03-18 09:11:55
你的控制權是什麼?複選框,收音機等? – 2013-03-18 09:13:18
Anoop Vaidya,不,我不使用自動佈局。我是MacOs編程新手。請給我一個適當的教程鏈接。目標控件 - 是一個文本字段(NSTextField)。 – kaa 2013-03-18 09:32:38