Re: [問題] GUI 讀取edit鍵入值已回收

看板MATLAB作者 (失ゎれた彩畫)時間14年前 (2010/05/27 22:36), 編輯推噓1(103)
留言4則, 2人參與, 最新討論串2/3 (看更多)
※ 引述《music1125 (PENTAX Optio 30)》之銘言: : 在前面一開始有先設 handles.a1 = 0; : edit的Tag名稱為Ta1: : function Ta1_Callback(hObject, eventdata, handles) : a1 = get(Ta1_Callback,'Value'); : handles.a1 = a1; : guidata(hObject, handles); : 後面有寫一個botton來讀a1的值: : function Trun_Callback(hObject, eventdata, handles) : a1 = handles.a1; : a1 : 所以當我在Ta1裡面填入0.1並按執行的botton時 : 應該在下面的Command視窗會看到a1 = 0.1 : 但是他依然顯示a1 = 0 (原始設定值) : 也就是說我沒有讀到鍵入值 : 想請問一下前輩們 : 我是哪個步驟有寫錯嗎? : 再次謝謝大家的教導 我想你誤解了GUI控制項裡面value的用法 當你在GUI裡改變edit的"數字"時 事實上你改變的是該edit控制項裡的"字串"(String) 並非value 因此當你在使用a1 = get(Ta1_Callback,'Value');時 得到的是value的預設值 而不是改變後的"字串" 因此應該要用的是a1=str2double(get(handles.a1,'String')); -- 時の放浪者 (Toki no Hourousha) ----"FF6 Tina's Theme" 遙か遠く 夜を越えて 砂漠の海を 彷徨う 神の聲は 蜃氣樓 忘れられた人々 影は白く 搖らめきたつ 今ひとたびの 幻 蒼く燃える 勇者の夢 永遠に眠る人々 遙か遠く 夜を越えて‧‧‧ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.32.82.2

05/28 12:28, , 1F
非常感謝您~
05/28 12:28, 1F

05/28 12:29, , 2F
a1=str2double(get(handles.Ta1,'String'));
05/28 12:29, 2F

05/28 12:29, , 3F
他可以執行了!!
05/28 12:29, 3F

12/24 22:18, , 4F
可以站內信我怎麼打嗎 看了很久還是看不懂QQ
12/24 22:18, 4F
文章代碼(AID): #1B_eDO0_ (MATLAB)
文章代碼(AID): #1B_eDO0_ (MATLAB)