无码av一区二区三区无码,在线观看老湿视频福利,日韩经典三级片,成 人色 网 站 欧美大片在线观看

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

2020-08-12 MATLAB App Designer——刪除既有的彈窗

2020-08-12 17:12 作者:-何其-  | 我要投稿

1、目標

? ? ?在編程中想實現(xiàn)一個彈窗(uifigure控件)多次彈出

如果該彈窗存在則先關閉在重新生成

2、刪除方法

APP Designer中刪除彈窗控件采用“delete”命名,假設彈窗句柄名稱為app.FirstTreeNode.Figure,則刪除命令為:delete(app.FirstTreeNode.Figure)

3、進階方法

?3.1?在編程階段,在刪除該彈窗時同時清空該彈窗Children控件,實現(xiàn)思路,是指定一個主變量,如app.FirstTreeNode,設置彈窗句柄? app.FirstTreeNode.Figure=uifigure(...);設置彈窗內(nèi)控件其他句柄,如tree控件:app.FirstTreeNode.Object.Tree = uitree(...),?如Spinner控件:?app.FirstTreeNode.Object.Spinner = uispinner(...)。這樣在刪除彈窗控件時同時刪除該彈窗內(nèi)的控件,降低內(nèi)存的占用避免回調(diào)不知名的沖突。

3.2實現(xiàn)代碼的通用性,一個函數(shù)可以刪除多個指定彈窗句柄,用到eval函數(shù)與strcat函數(shù)

function [ ] = ifun_DeletcFigureFcn(app,FigureHandleStr)?

% 刪除既有的彈窗Figure和該句柄下控件Object合集

%?app 不可刪除

%?FigureHandleStr 彈窗句柄字符串 % eg:'app.FirstTreeNode.Figure'

? ? ? ? ? ? try

? ? ? ? ? ? ? ? ID = strfind(FigureHandleStr,'.');

? ? ? ? ? ? ? ? FigureHandleStr = FigureHandleStr(1:ID(end)-1);

? ? ? ? ? ? ? ? if? ?eval(strcat('isfield(',FigureHandleStr,',',39,'Figure',39,')&&...

~isempty(',FigureHandleStr,'.Figure )'))

? ? ? ? ? ? ? ? ? ? eval(strcat('delete(',FigureHandleStr,'.Figure)')); % 刪除彈窗

? ? ? ? ? ? ? ? ? ? eval(strcat(FigureHandleStr,'.Object=[];')); % 刪除控件信息

? ? ? ? ? ? ? ? end

? ? ? ? ? ? catch

? ? ? ? ? ? end

? ? ? ? end





2020-08-12 MATLAB App Designer——刪除既有的彈窗的評論 (共 條)

分享到微博請遵守國家法律
城固县| 双峰县| 大渡口区| 四川省| 韩城市| 特克斯县| 大田县| 巢湖市| 杨浦区| 鄂伦春自治旗| 驻马店市| 边坝县| 大足县| 卢氏县| 福安市| 奉贤区| 抚松县| 清苑县| 宜川县| 香格里拉县| 色达县| 莒南县| 平泉县| 南木林县| 宁陵县| 平乡县| 天柱县| 平邑县| 泸定县| 疏附县| 龙岩市| 嘉黎县| 额敏县| 延长县| 望奎县| 石棉县| 贵溪市| 同江市| 北流市| 怀柔区| 元谋县|