【MATLAB App Desinger】關(guān)于控件的句柄是否有效
背景
????在通過function函數(shù)對指定控件進行賦值,經(jīng)常性存在該控件不存在的還強行賦值導(dǎo)致出錯的情況。
解決方法
????百度了下,可以用ishandle函數(shù)來實現(xiàn)控制,測試后對部分內(nèi)容并沒有效果


????實際使用中,ishandle函數(shù)屬于有時有效有時無效的情況,具體情況尚未做區(qū)分,但為了解決這種情況,可以結(jié)合函數(shù)isvalid進行輔助判斷。

? ? 現(xiàn)在采用組合的方式判斷給定控件句柄objHandle.Progressdlg是否有效,目前整個項目運行階段尚未發(fā)生報錯的問題。
????~isempty( objHandle ) && isfield( objHandle , 'Progressdlg' ) == 1 && ~isempty( objHandle.Progressdlg ) && ( ishandle( objHandle.Progressdlg )? == 1 || isvalid( objHandle.Progressdlg ) == 1 )
參考鏈接
https://ww2.mathworks.cn/help/matlab/ref/ishandle.html
官方幫助文檔中,ishandle是測試是否有效的圖形或?Java?對象句柄,而??方法是確定使用?
?類句柄對象的有效性;?
對圖形對象使用,
標(biāo)簽: