JMP 19:如何透過雙擊表格腳本開啟腳本編輯器?大家好,
我目前使用的是 JMP 19.1,注意到其使用者介面行為與 JMP 18 相比有所變化。
在 JMP 18 中,當我雙擊資料表左側面板中的表格腳本時,它會自動開啟腳本編輯器。然而,在 JMP 19 中,同樣的動作(左鍵雙擊)只會觸發「重新命名腳本」功能。
有沒有什麼方法或設定可以讓 JMP 19 的行為像 JMP 18 一樣,以便我可以透過雙擊直接進入編輯模式?
先感謝您的幫忙!
自動化和腳本編寫回覆:JMP 19:如何透過雙擊表格腳本開啟腳本編輯器?恢復 雙擊編輯表格腳本,按 Ctrl+V 貼上表格腳本
回覆:JMP 19:如何透過雙擊表格腳本開啟腳本編輯器?呵呵:我還問了gemini3.1 pro,它也剛好提供了這個連結。
但這與我的要求不同。
我喜歡使用 JMP 18
謝謝! 
回覆:JMP 19:如何透過雙擊表格腳本開啟腳本編輯器?JMP19 中,一些很棒的功能消失了: 未記錄的秘密
JMP19.1 中大部分功能都已重新新增。但雙擊編輯表格腳本的功能仍缺失。
好的,它們仍然可見,用戶仍然可以透過某種方法進行編輯…
但經過多年的「雙擊」操作,許多用戶不禁要問:為什麼雙擊操作不能回歸?
回覆:JMP 19:如何透過雙擊表格腳本開啟腳本編輯器?我也徹底改變了我的習慣。
盡量不要將腳本儲存在表格中
許多腳本都可以設計成可以單獨使用和保存。
JSLS 的數量太多了,有時你必須搜尋才能找到。如果腳本在表格中,則很難找到它。
謝謝!
回覆:JMP 19:如何透過雙擊表格腳本開啟腳本編輯器?全自動。
Set Clipboard( txt );dt = New Table("test");Current Data Table(dt);dt << Bring Window To Front;Try(Main Menu("Paste With Column Names"));
Wait(0.5); dt << Clear Column Selection();
Column(dt, 1) << Set Selected(1);
库 = Load Dll("User32");库 << DeclareFunction("keybd_event", Convention(STDCALL), Alias("keybd_event"),
Arg(UInt8, "bVk"), Arg(UInt8, "bScan"), Arg(UInt32, "dwFlags"), Arg(UIntPtr, "dwExtraInfo"),
Returns(Void)
);
VK_F2 = Hex To Number("71"); VK_LEFT = Hex To Number("25"); KEYUP = Hex To Number("02");
库 << keybd_event(VK_F2, 0, 0, 0);库 << keybd_event(VK_F2, 0, KEYUP, 0);Wait(0.3);
库 << keybd_event(VK_LEFT, 0, 0, 0);库 << keybd_event(VK_LEFT, 0, KEYUP, 0);
Wait(0.1);库 << Unload Dll();
回覆:JMP 19:如何透過雙擊表格腳本開啟腳本編輯器?好招!
它有點像是元函數——一個允許與 GUI 進行標準互動的腳本。
因此,可以將 Shift-F2 連結到類似的 JSL 程式碼,該程式碼透過右鍵單擊上下文功能表 *) 觸發按鍵序列來開啟腳本編輯器 ;- )
為了完成整個過程:F2 也適用於表格腳本:重新命名選定的表格腳本。
所以,更改表格腳本名稱的方法有很多。
*) 類似下面的程式碼,但要控制右鍵彈出選單…
VK_APPS = Hex To Number("5D"); // Windows Application / Context Menu key
VK_DOWN = Hex To Number("28"); // Arrow Down — navigate menu items
VK_RETURN = Hex To Number("0D"); // Enter
KEYUP = Hex To Number("02");
dll << keybd_event(VK_APPS, 0, 0, 0);
dll << keybd_event(VK_APPS, 0, KEYUP, 0);
Wait(0.3); // wait for context menu to appear
// Navigate to 2nd menu item (2x arrow down - unfortuntely: no effect, keybd_event is too old)
dll << keybd_event(VK_DOWN, 0, 0, 0);
dll << keybd_event(VK_DOWN, 0, KEYUP, 0);
Wait(0.05);
dll << keybd_event(VK_DOWN, 0, 0, 0);
dll << keybd_event(VK_DOWN, 0, KEYUP, 0);
Wait(0.05);
dll << keybd_event(VK_RETURN, 0, 0, 0);
dll << keybd_event(VK_RETURN, 0, KEYUP, 0);