Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Objective c 如何通过点击现有(实际)TableView的一行来调用(打开)新TableView_Objective C_Macos_Cocoa_Model View Controller - Fatal编程技术网

Objective c 如何通过点击现有(实际)TableView的一行来调用(打开)新TableView

Objective c 如何通过点击现有(实际)TableView的一行来调用(打开)新TableView,objective-c,macos,cocoa,model-view-controller,Objective C,Macos,Cocoa,Model View Controller,我一直在尝试实现不同的方法,当我点击另一个表视图的一行时,用一个表视图打开一个新窗口,但没有任何效果,web上的所有结果都是针对iOS或Swift的。 我在objective-c中工作,用于桌面(OSX,ElCapitan)和xcode(7.2) 在正在使用的NSTableCellView顶部添加一个透明的NSButton 创建一个新的NSWindowController子类,并在其中添加第二个NSTableView及其NSTableViewDelegate/DataSource 将iActio

我一直在尝试实现不同的方法,当我点击另一个表视图的一行时,用一个表视图打开一个新窗口,但没有任何效果,web上的所有结果都是针对iOS或Swift的。 我在objective-c中工作,用于桌面(OSX,ElCapitan)和xcode(7.2)

  • 在正在使用的NSTableCellView顶部添加一个透明的NSButton

  • 创建一个新的NSWindowController子类,并在其中添加第二个NSTableView及其NSTableViewDelegate/DataSource

  • 将iAction连接到(1)中的覆盖按钮,并使其实例化(2)中创建的窗口控制器。调用
    showWindow:nil
    [controller.window makekey和derfront::
    以显示窗口控制器。不要忘记创建对控制器的强引用

  • 例如:

    - (IBAction)didPressOverlayButton:(id)sender {
        CustomWindowController *controller = [[CustomWindowController alloc] init];
        [controller showWindow:nil];
        [controller.window makeKeyAndOrderFront:nil];
        _newController = controller;
    }
    
  • 在正在使用的NSTableCellView顶部添加一个透明的NSButton

  • 创建一个新的NSWindowController子类,并在其中添加第二个NSTableView及其NSTableViewDelegate/DataSource

  • 将iAction连接到(1)中的覆盖按钮,并使其实例化(2)中创建的窗口控制器。调用
    showWindow:nil
    [controller.window makekey和derfront::
    以显示窗口控制器。不要忘记创建对控制器的强引用

  • 例如:

    - (IBAction)didPressOverlayButton:(id)sender {
        CustomWindowController *controller = [[CustomWindowController alloc] init];
        [controller showWindow:nil];
        [controller.window makeKeyAndOrderFront:nil];
        _newController = controller;
    }