このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。
この例では、関数能够
使用てにテーブルを表示する方法说明ますます,テーブルテーブルのの外観外観外観をを変更するする方法と,実行実行中ののアプリアプリでテーブル
関数能够
は、Figure 内に空の UI テーブルを作成します。
fig = uifigure('位置',[100 100 752 250]); uit = uitable(“父母”,fig,'位置',[25 50 700 200]);
混在するデータ型を含む患者データのサンプルを読み込み、それを table 配列に保存します。データを、テーブル コンポーネントのセル内のドロップダウン リストとして表示するには、cell 配列変数を categorical 配列に変換します。データをテーブル UI コンポーネントに表示するには、table 配列を数据
プロパティのとして指定し。。
load耐心t = table(LastName,Age,Weight,Height,Smoker,...SelfAssessedHealthStatus); t.SelfAssessedHealthStatus = categorical(t.SelfAssessedHealthStatus,...{'贫穷的','Fair','好的','Excellent'},,'Ordinal',真的);uit.data = t;
UI テーブルの表示をいくつかの方法でカスタマイズすることができます。列見出しを追加するには、ColumnName
プロパティを使用ます。
uit.ColumnName = {'Last Name','年龄','重量',...'高度',“吸烟者”,'Health Status'};
列のを调整する,,ColumnWidth
プロパティを指定します。ColumnWidth
プロパティはn列のの配列,,はの列数。特定特定の列の幅を设定,,,'auto'
を使用て,内容を基にに®に幅を設定させます。
uit.columnwidth = {'auto',75,'auto','auto','auto',100};
RowName
プロパティを'numbered'
に设定こと,付きの行见出し追加します。
uit.RowName ='numbered';
Position
プロパティを使用してテーブルの位置とサイズを変更します。
uit.Position = [15 25 565 200];
既定では、テーブル UI コンポーネントは行のストライプ配色を使い、指定した背景色がテーブルの終わりまで繰り返されます。RowStriping
プロパティを'离开'
に设定と,テーブルUIコンポーネントは背景颜色
プロパティで指定された最初の色のみをすべての行に使用します。ここでは、行のストライプ配色を'on'
のままとし,背景颜色
プロパティに 3 つの異なる色を設定します。
uit.BackgroundColor = [1 1 .9; .9 .95 1;1 .5 .5];
可列
プロパティを真的
に設定することで、すべての列を並べ替え可能にします。列が並べ替え可能である場合、ヘッダーにカーソルを合わせると矢印が表示されます。
uit.ColumnSortable = true;
テーブル内のデータを編集するユーザーの権限を制限するには、ColumnEditable
プロパティをます既定では実行のアプリでをを编集することははできでき列列列ColumnEditable
プロパティを真的
に設定すると、その列のデータが編集可能になります。
uit.ColumnEditable = [false false true true true true];
桌子
オブジェクトには、よく使用される 2 つのコールバックがあります。CellSelectionCallback
は、ユーザーが別のセルを選択すると実行されます。CellEditCallback
は、ユーザーがセルの値を変更すると実行されます。
uit.celleditcallback = @AgeCheckcb;
たとえば、Age列に0
〜120
の値を格納する場合、CellEditCallback
を次のような関数に設定します。
功能ageCheckCB(src,eventdata)
if(eventdata.Indices(2) == 2 &&...%检查第2列是否(eventdata.NewData < 0 || eventdata.NewData > 120)) tableData = src.Data; tableData{eventdata.Indices(1),eventdata.Indices(2)} = eventdata.PreviousData; src.Data = tableData;% set the data back to its original value警告(“年龄必须在0到120之间。”)% warn the userend
end
ユーザーが外値入力する,关数警告をを返し,セル値が前前のの値に戻さ戻さ
テーブルののを确认するに,,得到
コマンドを使用します。
得到(uit)
背景颜色: [3x3 double] BeingDeleted: off BusyAction: 'queue' ButtonDownFcn: '' CellEditCallback: @ageCheckCB CellSelectionCallback: '' Children: [0x0 handle] ColumnEditable: [0 0 1 1 1 1] ColumnFormat: {} ColumnName: {6x1 cell} ColumnSortable: 1 ColumnWidth: {'auto' [75] 'auto' 'auto' 'auto' [100]} ContextMenu: [0x0 GraphicsPlaceholder] CreateFcn: '' Data: [100x6 table] DeleteFcn: '' DisplayData: [100x6 table] DisplayDataChangedFcn: '' Enable: 'on' Extent: [0 0 0 0] FontAngle: 'normal' FontName: 'Helvetica' FontSize: 12 FontUnits: 'pixels' FontWeight: 'normal' ForegroundColor: [0 0 0] HandleVisibility: 'on' InnerPosition: [15 25 565 200] Interruptible: on KeyPressFcn: '' KeyReleaseFcn: '' Layout: [0x0 matlab.ui.layout.LayoutOptions] OuterPosition: [15 25 565 200] Parent: [1x1 Figure] Position: [15 25 565 200] RearrangeableColumns: off RowName: 'numbered' RowStriping: on StyleConfigurations: [0x3 table] Tag: '' Tooltip: '' Type: 'uitable' Units: 'pixels' UserData: [] Visible: on