2011-03-28 44 views
0

好吧,给我的程序“选项”

在Xcode 4我已经创建了3个个小程序:计算器,“便笺”(空白笔记型窗口)和“电子数据表”(只是看起来像一个电子表格,用于保存用计算器获得的值)

我现在想要做的是将一个按钮添加到我的计算器中,当按下该按钮时,执行便笺式或电子表格并给用户哪一个选择的选项。

我已将这两个软件包都放在“应用程序”文件夹中,以便他们很容易找到。

我想知道是否需要子类化一个NSButton,或者如果有更简单的方法来做到这一点。

我在想我可以让NSButton在/ users/me/applications打开一个文件浏览器,然后当用户(我:-))选择其中一个应用程序时,它会将它作为一个变量存储当按下按键时,按钮将会执行。

但是当时我不知道如何给按钮两个不同的动作,“喀嗒”和“按”

如果我有子类的按钮,我应该在哪里开始寻找?如果有更简单的方法,那会是什么?

+0

你说的“压”是什么意思? – 2011-03-28 07:20:29

回答

2

似乎简单的解决方案将是两个按钮,每个程序一个。

如果您只使用一个按钮设置,那么直接的做法是让按钮的操作显示一个表单或对话框,让用户决定要启动哪个应用程序。

+0

我想要第二种方法(我正在使用这个应用程序来学习Objective-C的来龙去脉,作为对苹果文档和它们的objective-c书的补充)。我想知道如何让按钮有两个功能,一个选择程序,另一个实际启动它。这是可能的标准NSButton或它需要被分类? – Zrb0529 2011-03-28 06:52:49

+0

我认为正确的方法来做到这一点,如果你真的想使用一个按钮,就是使用NSPopupButton而不是NSButton。点击一个弹出按钮会显示一个菜单。您的按钮可以显示一个包含您的两个应用程序名称的菜单,并从菜单中选择一个应用程序将启动该应用程序。这避免了对子类化的需求,并提供了一个用户应该熟悉的UI。 – Caleb 2011-03-28 12:09:13

+0

我喜欢这种方式,听起来不错。有没有什么办法可以让菜单让我决定按钮将运行哪个程序,然后按下“等效键盘”将实际启动程序? – Zrb0529 2011-03-28 14:36:23

2

我喜欢这种方式,听起来不错。有没有什么办法可以让菜单让我决定按钮将运行哪个程序,然后按下“等效键盘”将实际启动程序? - TotalCocoaNewb

当然这样:

-(IBAction)theActionYouSetOnThePopupButtonInInterfaceBuilder:(NSPopUpButton*)sender 
{ 
    if (0 == [sender indexOfSelectedItem]) { 
     // do something... 
    } else { 
     // do something else... 
    } 
}