2012-01-12 38 views
5

我知道有一種方法可以讓鍵盤上的回車鍵確認inputdlg()對話框,在這裏看到: http://www.mathworks.de/support/solutions/en/data/1-39UWQT/index.html?product=ML&solution=1-39UWQTMATLAB:確認輸入對話框?

好吧這是一個解決辦法,問題是,我必須將它保存在MATLAB目錄(因爲在頁面上說:「由於它依賴於幾個私有函數,所以newid.m只有在存儲在這個位置時才能工作。」)現在的問題是,我想編寫一個不依賴於代碼的代碼在Matlab目錄中由於缺少權限而導致用戶更改......是否還有另一種(也許是骯髒的)方式來實現這種行爲?

謝謝!

+1

1,因爲我根本不知道有這個惱人的問題解決方法! – 2012-01-12 09:37:15

回答

2

解決方案:

  1. 複製newid.mhttp://www.mathworks.de/support/solutions/en/data/1-39UWQT/index.html?product=ML&solution=1-39UWQT到任意文件夾,例如放入您的項目文件夾
  2. 進入存儲原始inputdlg()的文件夾;您可以通過which inputdlg發現了這一點(例如C:\ Program Files文件\ MATLAB \ R2011b \工具箱\ MATLAB \ uitools \ inputdlg.m)
  3. 走進了private -subdirectory並複製兩個文件getnicedialoglocation.msetdefaultbutton.m並粘貼到您的項目文件夾位於newid.m。現在,通過使用newid()打電話給你的所有輸入對話框,而不是inputdlg()
+0

順便說一句,我建議重命名'getnicedialoglocation'和'setdefaultbutton'(文件名,函數名和函數調用''newid')的拷貝版本,以便它們不會跺腳以及將來對原始版本的更新。我只是在名稱後面加上了_enter。 – patrickvacek 2013-08-29 15:53:21