[問題]GUI 抓edit 中之文字

作者: chenmish (arlibuda)   2014-12-16 13:45:59
如題,小弟目前 GUI 畫面中有數個 edit,例如:edit1~edit10
但是我需要根據某個 n 值,來抓 edit 中之文字,例如:
n=5,抓 edit1~edit5 中的文字。
n=8,抓 edit1~edit8 中的文字。
目前我的 code 是這麼寫的:
for aa = 1 : NUMBER
KK( aa ) = get( eval(['handles.edit', num2str(aa+11)]) , 'string' ) ;
end
會這麼寫是因為這種寫法對於 popupmenu 抓取數值是有效果的,但現在要抓取文字
卻沒有辦法了,不知道是否需要用到其他 code 來完成?
作者: winnie4952 (WinNie BeAr )   2014-12-16 16:42:00
先令KK=cell(1); 在去接值
作者: mp19990920 (郝渴連)   2014-12-16 18:02:00
你幹嘛用 edit1~10 來放handle?缺點一 workspace雜亂缺點二 變數太多易搞混
作者: chenmish (arlibuda)   2014-12-16 18:04:00
因為我想要將來在 edit 中輸入文字,之後透過 GUI 截取文字作動作
作者: mp19990920 (郝渴連)   2014-12-16 18:04:00
缺點三 造成你現再要拿值必須用eval
作者: chenmish (arlibuda)   2014-12-16 18:05:00
那是否有更好的方法呢@@?
作者: mp19990920 (郝渴連)   2014-12-16 18:05:00
直接用一個變數較 hEdit = zeros(1, 10);依序把handle放進去這樣變數只會有一個,而且不用eval,get(hEdit(1:5), 'String') 就可一次拿5個
作者: chenmish (arlibuda)   2014-12-16 18:08:00
可是現在問題是如何把 handle 放進去呢?
作者: mp19990920 (郝渴連)   2014-12-16 18:10:00
那你當初是怎麼得到edit1~10的???y
作者: chenmish (arlibuda)   2014-12-16 18:18:00
有點不懂你意思@@,今天我要的就是有一個 edit,我希望用變數的方式得到其中的文字
作者: mp19990920 (郝渴連)   2014-12-16 18:29:00
"小弟目前 GUI 畫面中有數個 edit,例如:edit1~edit"你的第一句話
作者: chenmish (arlibuda)   2014-12-16 19:09:00
是阿,就是畫面中有數個edit,現在要抓當中的文字
作者: jatj   2014-12-17 09:54:00
用eval是很不好的習慣 不好debug, 效能也低

Links booklink

Contact Us: admin [ a t ] ucptt.com