[サンプルコード]
Form frmSample1 {
Width = 400;
Height = 300;
/* カレントセルの位置と変更前の背景色を保持するためのArray */
Array prev;
prev["Row"] = NULL;
prev["Col"] = NULL;
prev["BgC"] = NULL;
FlexView FlexView1 {
X = 20;
Y = 20;
Width = 346;
Height = 217;
Border = $TRUE;
CursorColor = $CCCCFF;
FlexRecord FlexRecord1 {
FlexHeader FlexHeader1 {
Width = 30;
Numbered = $TRUE;
}
FlexLabel FlexLabel1 {
Title = "FlexLabel";
}
FlexTextBox FlexTextBox1 {
Title = "FlexTextBox";
}
FlexTextBox FlexTextBox2 {
Title = "FlexTextBox2";
}
}
FlexView1 << new CSVDocument << csv {
a,関東,東京,東池袋店
a,関東,東京,南池袋店
a,関東,神奈川,茅ケ崎店
b,関西,大阪,日本橋店
b,関西,大阪,西中島店
};
Function OnCursorMoved( e ) {
/* まず、カーソル移動前のセルの背景色を元の設定に戻します */
if(^.prev["Row"] != NULL){
var p = ^.prev["Row"].GetColumn( ^.prev["Col"] );
p.BgColor = ^.prev["BgC"];
}
/* カレントセルがFlexTextBoxだったら背景色を設定します */
/* また、カレントセルの位置をArrayに保持します */
var c = e.Row.GetColumn( e.Col );
if(c.ClassName == "FlexTextBoxCell"){
^.prev["Row"] = e.Row;
^.prev["Col"] = e.Col;
^.prev["BgC"] = c.BgColor;
c.BgColor = $9999FF;
}
}
}
}
|