【Matlab App Designer】关于uitable的选中列名时出错的问题
背景
采用matlab2022b的app designer中的uitable控件时,对空白表格的列进行列名选中时出现报错


报错信息如下:
Error in executing callback registered with ViewModel:
错误使用 matlab.ui.internal.controller.uitable.utils.TableSelectionValidator.validateRowSelection
选择索引超出数据边界。
出错 matlab.ui.internal.controller.uitable.utils.TableSelectionValidator.validateCellSelection (第 107 行)
TableSelectionValidator.validateRowSelection(storage, selection(:,1)');
出错 matlab.ui.internal.controller.uitable.utils.TableSelectionValidator.validateSelection (第 17 行)
TableSelectionValidator.validateCellSelection(storage, selection);
出错 matlab.ui.internal.controller.uitable.WebMWTableController/handleEvent (第 764 行)
obj.Model.setSelectionFromClient(selection,...
出错 matlab.ui.internal.controller.uitable.WebMWTableController>@(varargin)obj.handleEvent(varargin{:}) (第 586 行)
obj.EventHandlingService.attachEventListener( @obj.handleEvent );
原因分析
matlab的uitable控件BUG,当打开uitable的属性Multiselect设置为false(不允许单元格多选)时导致报错

应对方式
由于这个是matlab的bug,那么如果想设置为只能选中单个单元格时,根据单元的Data属性进行设置:
Data属性全空时,属性Multiselect设置为true,避免出发BUG
Data属性有值时,属性Multiselect设置为false,实现具体功能