0

ウィンドウの下部に NSTextField コントロールがあります。条件に応じて表示または非表示にする必要があります。

初期状態では、コントロールは非表示になっています。ウィンドウには、コントロールの位置に空白が表示されます。実行時にコントロールが表示されるようにする必要があります

mpTxtCtrl.hidden = NO;

それは起こりません。

タスク:

1 表示/非表示コントロール。

2 コントロールの状態に応じてメイン ウィンドウのサイズを変更します。

ココアでレイアウトを管理する方法のチュートリアルが見つかりません。どんな助けにも感謝します!

4

2 に答える 2

1

実行時にコントロールが表示されるようにする必要があります

mpTxtCtrl.hidden = NO;

それは起こりません。

mpTxtCtrlコンセントがペン先のテキスト フィールドに接続されていることを確認してください。コンセントを何かに接続するのを忘れていることは、何も起こらない主な原因です。

ココアでレイアウトを管理する方法のチュートリアルが見つかりません。

nib の編集中に File Inspector に切り替え、「Use Auto Layout」をオンにします。Xcode は Aqua ガイド (ビューを正しく配置してサイズを変更すると表示される青い線) に沿ってビューを配置するたびに制約を作成し、Cocoa はビューのサイズとウィンドウの変更に応じてこれらの制約を適用します。

より詳しい情報:

于 2013-03-18T10:37:59.940 に答える
0

ここに便利なものがいくつかある場合は、このコードを確認してください。

-(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-18T09:47:23.880 に答える