菜單編輯器在Windows版本的JMP 7中獲得了一個新界面。通過從“編輯”菜單底部的“自定義”子菜單中選擇“菜單和工具欄”命令,可以訪問菜單編輯器。

(點擊查看完整大小的圖片)
從編輯 - >自定義菜單訪問菜單編輯器。
這會使菜單窗口顯示停靠在主窗口的左側。JMP 7結合了編輯主菜單的功能,可以將工具欄編輯到一個窗口中。這有助於在菜單和工具欄之間複製和/或移動命令,這是對以前版本的JMP的一個重大改進,其中菜單編輯器位於工具欄編輯器的單獨窗口中。
主菜單和工具欄使用樹結構表示。主菜單的“根”是“主菜單”節點,工具欄列表的“根”是“工具欄”節點。如果單擊“主菜單”節點旁邊的加號“+”,則節點“展開”,並顯示組成主菜單的菜單列表。同時,如果單擊“工具欄”節點,將顯示所有工具欄的列表。

(點擊查看完整大小的圖片)
菜單窗口 - JMP 7中的新菜單編輯器。
要消除菜單命令列表的顯示,您只需單擊菜單節點旁邊的減號“ - ”符號即可。這會“折疊”節點。
向現有菜單添加命令非常簡單。在這個例子中,我想在我的File菜單中添加一個名為“Execute Query”的命令,它將運行一些JSL來向我的dBASE數據庫提交SQL查詢。我想將此命令放在“文件”菜單中的“打開”命令下。因此,我展開了“文件”節點,並在“打開”節點上單擊鼠標右鍵。從出現的彈出菜單中,我選擇了“Insert After”命令。結果,標記為“無標題”的新項目被插入到“打開”節點正下方的樹中。然後我右鍵單擊“無標題”項並從彈出菜單中選擇“屬性”命令。這導致出現“菜單項屬性”對話框。(我可以輕鬆地雙擊“Untitled”節點,以顯示“菜單項屬性”對話框。)
然後我能夠設置我希望我的命令具有的所有屬性 - 特別是它的標題和選擇時應該執行的JSL。我還點擊了“菜單項屬性”對話框中的“圖標”選項卡,並為我的新命令分配了一個位圖。

(點擊查看完整大小的圖片)
“菜單項屬性”對話框。
在我單擊“確定”按鈕以關閉“菜單項屬性”對話框後,我不得不單擊 “應用” 菜單窗口右上角的按鈕,以使我的修改生效。或者,我也可以點擊“應用”按鈕正上方的倒紅三角形並選擇 “應用更改” 它提供的彈出菜單中的命令。一旦我指示JMP 應用我的更改,我的新“執行查詢”命令出現在JMP的文件菜單中。

(點擊查看完整大小的圖片)
“執行查詢”命令現在出現在“文件”菜單中。
重要的是要注意,在點擊“應用”按鈕之前,只需從與頂部紅色三角形菜單關聯的彈出菜單中選擇“放棄更改”命令,即可撤消在菜單窗口中所做的任何更改。菜單窗口的右上角。
繼續我們的示例,我決定將新的“Execute Query”命令添加到File_Edit工具欄。(File_Edit工具欄是JMP默認提供的標準工具欄之一,但沒有法律規定我無法修改它!)
首先,我右鍵單擊“執行查詢”項,然後從彈出菜單中選擇“複製”。接下來,我展開了“工具欄”節點,然後展開了“File_Edit”節點。我希望我的新命令出現在File_Edit工具欄中“運行腳本”按鈕的右側,因此我右鍵單擊“運行腳本”節點並從彈出菜單中選擇“粘貼”。然後我會看到第二個彈出菜單,其中包含命令“Copy Before”Run Script“”和“Copy After'Run Script'”(以及“取消”命令,以防我改變主意)。我選擇了“複製後'運行腳本'”。這將“執行查詢”命令放在菜單編輯器的File_Edit工具欄中的“運行腳本”命令下。
實際上有第二種方法可以完成同樣的事情,使用拖和下降 。在按住Control鍵的同時,我可以在“執行查詢”項上單擊鼠標左鍵。繼續按住Control鍵和我的鼠標左鍵,然後我可以在樹中向下拖動“執行查詢”項,直到我的光標懸停在File_Edit工具欄中的“運行腳本”項上,然後釋放鼠標按鈕。如果我遵循這個方法,那麼在釋放鼠標按鈕後,我會看到一個彈出菜單,我可以從中選擇“複製後'運行腳本'”命令。(注意,如果您使用剛剛描述的拖放方法但沒有按住Control鍵,那麼您將移動這個項目而不僅僅是複製它。)
無論我遵循哪種方法,為了使此更改在實際的File_Edit工具欄中生效,我必須單擊菜單窗口右上角的“應用”按鈕。

(點擊查看完整大小的圖片)
“執行查詢”命令的新按鈕出現在JMP的File_Edit工具欄中。
在下一個例子中,我決定在主菜單中添加一個名為“NTheory”的新菜單,位於“Graph”和“Tools”菜單之間。我的“NTheory”菜單將有兩個命令:“Euler Phi”和“Fibonacci”。
首先,在菜單窗口中,我展開了主菜單節點,並在“圖形”菜單項上單擊鼠標右鍵。我從彈出菜單中選擇了“Insert After”命令,結果“Graph”項下面出現了“Untitled”項。我雙擊新的“無標題”項目,在“菜單項屬性”對話框中,我發現其“菜單項類型”已根據需要設置為“子菜單”。因此,我所要做的就是將“Caption”屬性更改為“NTheory”,然後單擊“確定”以關閉“菜單項屬性”對話框。
接下來,我右鍵單擊“NTheory”項並從彈出窗口中選擇“Insert into Submenu”。

(點擊查看完整大小的圖片)
準備將第一個命令插入NTheory菜單。
這在“NTheory”節點下面插入了一個新的“無標題”項。這個新項目略微向右縮進,表明它屬於NTheory菜單。然後,我可以通過“菜單項屬性”對話框將其標題更改為“Euler Phi”並以通常的方式適當地設置其動作屬性。一旦我將項目添加到NTheory菜單,我就可以繼續將其他項目添加到我的新菜單中,如前面的示例所述。所以,我右鍵單擊“Euler Phi”項目並從彈出菜單中選擇“Insert After”。這創建了一個新的“無題”項目,然後我使用“菜單項屬性”對話框將其定義為“斐波那契”命令。

(點擊查看完整大小的圖片)
菜單編輯器顯示NTheory菜單及其兩個命令。
與往常一樣,為了使這些修改生效,我必須單擊菜單窗口右上角的“應用”按鈕。
通常,要添加整個子菜單,必須遵循的步驟完全相同。首先,創建一個新項目並將其“類型”設置為子菜單。然後,為了開始向子菜單添加命令,必須單擊子菜單並從彈出窗口中選擇“插入子菜單”命令。這會在子菜單中添加一個新項目。此時,您可以像往常一樣使用“Insert Before”和“Insert After”命令填寫子菜單的其餘部分。類似的評論適用於添加新工具欄。

(點擊查看完整大小的圖片)
單擊“應用”按鈕後,NTheory菜單將顯示在JMP的主菜單中。
M. Sundbom 中寫道:
我在Macintosh上使用JMP多年(版本1-6)。我想知道這個博客中涵蓋的這些新的有趣功能(菜單自定義,文件系統工具欄,項目......)是否也在Mac OS版本的JMP 7中實現?
理查德波特中寫道:
Mac上的JMP 7為項目和菜單自定義提供部分支持。例如,使用Mac版本的JMP 7,您可以從標準的“文件打開”對話框中選擇一個JMP項目文件並將其打開 - 項目定義的所有文檔和窗口都將打開。
不幸的是,JMP 7的Mac版本沒有提供我的博客中說明的項目樹編輯器。目前,只有Windows版本的JMP支持可視項目編輯器。
同樣,Mac上的JMP 7會將菜單自定義文件放在適當的位置。
用戶自定義的.jmpmenu文件應該放在這裡:〜/ Library / Application Support / JMP /
工廠默認菜單添加(英語語言環境)應該在這裡:JMP.app/Contents/Resources/en.lproj/Factory默認菜單/
此文件夾中的所有.jmpmenu文件都將應用於菜單欄。
再一次,Mac版本不提供可視化編輯器,因此要為Mac創建jmpmenu文件,您需要使用XML編輯器和Zip工具,或者使用Windows版本為Mac創建jmpmenu文件。
有關項目和菜單自定義的Mac限制的評論也適用於Linux版本的JMP。
我們將在未來版本的JMP中探索為Mac和Linux用戶添加項目和菜單的可視化編輯器。
詹妮弗巴伯中寫道:
你好。我非常渴望在Mac上嘗試菜單自定義功能。我使用Windows創建了我的.jmpmenu文件,並將其存儲在Windows所需的名為“Factory Default Menus”的文件中。在此文件中有兩個文件,一個.jmpmenu文件和一個Dependencies文件。我嘗試將Factory Default Menus文件複製到您指定的位置:JMP.app/Contents/Resources/en.lproj/Factory默認菜單/痛苦地使用UNIX但它不起作用。我收到的錯誤是“無法從存檔緩衝區中提取”。在我重讀了你的指令之後,我還看到我可以將我的.jmpmenu文件複製到另一個位置:〜/ Library / Application Support / JMP /但是,Dependencies文件怎麼樣?這是否需要去那里或者是不必要的。
如果我們能夠在Mac上的JMP 7中獲得自定義菜單,那麼我們將非常感謝升級!
我們將非常感謝您提供的任何幫助/建議。
此致
詹妮弗