国产精品天干天干,亚洲毛片在线,日韩gay小鲜肉啪啪18禁,女同Gay自慰喷水

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

2020-10-12 MATLAB App Designer—鎖定uitable控件內(nèi)部分單元格(非列)

2020-10-12 18:45 作者:-何其-  | 我要投稿

背景

工作中遇到一個情況,就是要設(shè)置下面圖中,黑色的單元格內(nèi)容無論怎么修改 true 或者 false 都顯示為 false的情況

實(shí)例圖片

嘗試

1.對于uitable控件來說,采用ColumnEditable屬性控制

只適用于列控制,故僅修改列的ColumnEditable屬性是無法實(shí)現(xiàn)的

2.針對方法1進(jìn)行修改,實(shí)現(xiàn)功能:當(dāng)鼠標(biāo)點(diǎn)選黑色單元格的時候,設(shè)置該列屬性ColumnEditable為false,表格選中的回調(diào)函數(shù)代碼如下:

? ? % 表名?app.ViewAnalysisData

Id = cell2mat(arrayfun(@(x)sum( ...

? ? ? ? ?source.StyleConfigurations.Style(x).BackgroundColor)==3,...

? ? ? ? ?(1:height(source.StyleConfigurations)),'Un',false))==1;

?Id = source.StyleConfigurations.TargetIndex{Id}==event.Indices;

if? max(Id(:,1)&Id(:,2))==1

? ? ? ?app.ViewAnalysisData.ColumnEditable(unique(event.Indices(:,2))) = true;

else

? ? ? app.ViewAnalysisData.ColumnEditable(unique(event.Indices(:,2))) = false;

end

方法2 存在一個問題,采用鼠標(biāo)修改Sheet1和時程列的true和false時,matlab支持單元格選中在點(diǎn)擊checkbox修改(2方法適用)和直接點(diǎn)擊checkbox修改(2方法則不適用,程序報(bào)錯)

3.對表格控件的DisplayDataChangedFcn進(jìn)行修改,凡是source.Data中包含黑色單元格的均不傳遞給表格控件app.ViewAnalysisData.Data,代碼如下:

?% 表名?app.ViewAnalysisData

Id = cell2mat(arrayfun(@(x)sum( ...?

? ? ? ? app.ViewAnalysisData.StyleConfigurations.Style(x).BackgroundColor)==0,...? ??? ? ? ? ? ? ? ? ?(1:height(app.ViewAnalysisData.StyleConfigurations)),'Un',false))==1;

Id = app.ViewAnalysisData.StyleConfigurations.TargetIndex{Id==1}; % 獲取黑色單元格的單元的Indices

source.Data(Id(:,1),Id(:,2)) = {''};? % 刪除包含黑色單元格的單元Indices

app.ViewAnalysisData.Data? = source.Data; % 將剔除后的數(shù)據(jù)傳遞給表格控件

評價(jià)

推薦方法3,支持matlab單元格選中在點(diǎn)擊checkbox修改(2方法適用)和直接點(diǎn)擊checkbox修改的兩種途徑




2020-10-12 MATLAB App Designer—鎖定uitable控件內(nèi)部分單元格(非列)的評論 (共 條)

分享到微博請遵守國家法律
射阳县| 松溪县| 正宁县| 个旧市| 乐山市| 色达县| 朝阳区| 芦溪县| 依兰县| 克山县| 饶河县| 金坛市| 育儿| 辛集市| 邳州市| 沂源县| 珠海市| 安泽县| 芜湖市| 宝坻区| 周口市| 岳池县| 祁连县| 绍兴市| 噶尔县| 和平县| 石阡县| 苗栗县| 彩票| 呼和浩特市| 绥阳县| 博乐市| 新巴尔虎右旗| 东阳市| 进贤县| 玛沁县| 德格县| 湛江市| 平塘县| 金堂县| 文昌市|