代码之家  ›  专栏  ›  技术社区  ›  fregante

如何在OSX中使GUI成为命令行工具的前端?

  •  8
  • fregante  · 技术社区  · 16 年前

    我很想知道怎么做一个图形用户界面 FFMPEG 贾德 在OSX中。我一直在寻找一个解决方案,并认为您,stackoverflow的用户,可以帮助我。也许你知道一些我还没见过的文档,或者更好的说,是一个制作图形用户界面的教程。

    我喜欢这两个工具,但我喜欢简单的拖放操作。

    注:我不需要图形用户界面,我想做一个。

    7 回复  |  直到 13 年前
        1
  •  7
  •   Kelan    16 年前

    在cocoa dev中心站点上有一个关于使用nstask包装命令行工具的教程:

    现在已经几岁了,但你应该开始了。

        2
  •  2
  •   JeremyP    16 年前

    如果您问“我如何在Mac OS X中创建一个与命令行工具接口的GUI应用程序”,答案是 NSTask . 但是,如果命令行工具提供编程API,那么使用它比调用命令行工具本身更好。

    如果你问“我如何在Mac OS X中创建一个GUI应用程序”,答案是阅读一本关于它的书并查看苹果教程文档。 Mac OS X上的Cocoa编程 我的出发点是艾伦·希勒加斯。

        3
  •  1
  •   user1449303    13 年前

    首先使用所需的GUI创建模式对话框NIB。
    当在C中调用时,创建一个NSreleasePool,然后创建一个魔法酱汁。

    [NSApplication sharedApplication]     
    ProcessSerialNumber psn;
    GetCurrentProcess( &psn );
    TransformProcessType(&psn,kProcessTransformToForegroundApplication);
    SetFrontProcess( &psn );
    

    稍后,从包中装入NIB后,发出

    [NSApp runModalForWindow:[controller window]];
    [[controller window] close];
    

    如果没有transromprocessType(),终端应用程序将得到击键,而不是模式对话框。

        4
  •  0
  •   TalkingCode    16 年前

    这可能不是最好的答案,但在书“XcodeUnleashed”中,有一章是如何在Cocoa应用程序中嵌入命令行工具。也许你应该看看。好书。

        5
  •  0
  •   Bryan Oakley    16 年前

    您可以使用类似tcl、python或ruby这样的脚本语言和类似tk的工具包,后者在Mac上使用本机小部件。

        6
  •  -1
  •   Shyam    16 年前

    在您的Leopard/Snow Leopard磁盘上,您可以找到Xcode,但也可以从Apple开发者社区下载它。Xcode附带了接口生成器,它允许您构建GUI,并且您可以使用cocoa框架装配到您的命令。

        7
  •  -1
  •   Michael Aaron Safyan    16 年前

    您太晚了,已经有一个用于ffmpeg的GUI前端调用了 ffmpegX 但无论如何,您将创建一个包装或使用库或可执行文件的模型…如果它使用可执行文件,则可以使用 popen 要调用可执行文件,请写入其stdin,并从其stdout中读取。视图和控制器基本上与您为任何其他GUI应用程序设计的视图和控制器相同。因为这是一篇Cocoa文章,所以您可以使用Objective-C和Cocoa来制作GUI,但它确实可以用任何语言实现。