
VB2005環境にてFlexGridを使用しています。
ある列のセルの値が1になったら、その行の背景色を灰色にしたいと
思っているのですが、その方法についてご教授ください。
おそらくは値が変わった時に何かイベントを取得できると思うので、
その時に例えば左から2列めの該当セルが1にされたら、色を変える…
というような考え方で良いでしょうか?
ただ、それを実現するためのイベントが何か、また、行の値を
変える方法がわからず困っています。
(ROWプロパティでしょうか?)
申し訳ないのですが、サンプルコードを交えて教えていただけ
ないでしょうか?
よろしくお願いします。
No.1ベストアンサー
- 回答日時:
VB6の頃の FlexGridってことでしょうか?
セルのデータを変更しても それを検知できるイベントはありません
やるとすればEnterイベント(VB6風ならGotfocusイベント)やLeaveCellイベントで
カレントセルの列番号、値を調べて条件に一致したならCellBackColorで色を変更といった具合でしょう
LeaveCellイベントでやる場合は 再帰を不可にする工夫が必要です
dim n as integer
' 元に戻すための色を設定
dim cl as Drawing.Color = axMSFlexGrid1.BackColor
if axMSFlexGrid1.Text = "1" then
' 希望の色に変更してください
cl = Color.Red
end if
' 左から2番目の列がカレントセルなら
' FixedColsを考慮したほうがいいでしょう
if axMSFlexGrid1.Col = 1 then
' 行の先頭から末尾までセルの背景色を変更
for n = axMSFlexGrid1.FixedCols to axMSFlexGrid1.Cols-1
axMSFlexGrid1.CellBackColor = cl
next
' 元選択されていた列に戻す
axMSFlexGrid1.Col = 1
end if
といった具合でしょう ...
行番号は Rowプロパティで取得できますよ
詳しいVerを書き忘れていました。
Flex Grid For.NET 3.0Jです。
しかし、redfox63さんの提示してくれたコードを参考に、
目的の動作を実現することができました。
ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
Flexgridで選択行の列の値を取得したい
Visual Basic(VBA)
-
FlexGridの選択されたセル内の文字色を変える方法
C言語・C++・C#
-
vb6のVSFlexGridで選択行、列の値を取得し構造体に入れたい
Visual Basic(VBA)
-
-
4
FlexGridで文字色を変更。
Visual Basic(VBA)
-
5
CloseとDisposeの違い
Visual Basic(VBA)
-
6
FlexGridで複数選択したセル、行、列を取得
Visual Basic(VBA)
-
7
CSVファイルの中で、「 , 」カンマを使いたい
その他(コンピューター・テクノロジー)
-
8
MSFlexGridのデータ表示位置の設定
Visual Basic(VBA)
-
9
FlexGridの一部のみ表示を更新したいのです。
Visual Basic(VBA)
-
10
VB.NETで DataRow()を利用して、値からコードを取得したい。
Visual Basic(VBA)
-
11
VB.netでメソッドからコントロールを取得
Visual Basic(VBA)
-
12
DATE型変数を初期化する方法
Visual Basic(VBA)
-
13
FORMが開いているかどうかの確認方法
Visual Basic(VBA)
-
14
VB6のMsFlexGridコントロールについて
Visual Basic(VBA)
-
15
ウォッチ式の文字数制限について
Visual Basic(VBA)
-
16
VB.NETでのイベントの途中終了
Visual Basic(VBA)
-
17
グリッドの列の最大値を求めたい。
Visual Basic(VBA)
-
18
VB6 配列を初期化したい
Visual Basic(VBA)
-
19
MSFlexGrid 行選択状態
Visual Basic(VBA)
-
20
フォームの存在をチェックする方法
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
【Excel VBA】指定行以降をクリ...
-
【Excel】セルの背景色、文字色...
-
特定のセルが空白だったら、そ...
-
エクセルvba:自己セルの情報取...
-
VBAを使用した時間管理
-
C列/D列 の割り算
-
エクセルVBAでコピーして順...
-
VB.NETで、EXCELの右寄せ
-
セルに画像挿入すると、右セル...
-
Excel ユーザーフォームをモー...
-
DatagridViewの値確定
-
Excelで指定した日付から過去の...
-
エクセルVBAのコピー方法につい...
-
VBAでマクロ実行中はExcelのマ...
-
【VBA】シート上の複数のチェッ...
-
特定行の色を変えたい(FlexGrid)
-
EXCELのVBA-フィルタ抽出後の...
-
TODAY()で設定したセルの日付...
-
Excel vbaで特定の文字以外が入...
-
VBA実行後に元のセルに戻りたい
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ExcelVBAを使って、値...
-
特定のセルが空白だったら、そ...
-
Excelで指定した日付から過去の...
-
i=cells(Rows.Count, 1)とi=cel...
-
エクセルvbaで、別シートの最下...
-
任意フォルダから画像をすべて...
-
VBA実行後に元のセルに戻りたい
-
Application.Matchで特定行の検索
-
Excel vbaで特定の文字以外が入...
-
【Excel VBA】指定行以降をクリ...
-
”戻り値”が変化したときに、マ...
-
【Excel】指定したセルの名前で...
-
VBAでセル同士を比較して色付け
-
Excelのプルダウンで2列分の情...
-
VBAでセルをクリックする回...
-
Excel VBAで、 ヘッダーへのセ...
-
VBA初心者です。結合セルを保持...
-
DataGridViewのセル編集完了後...
-
【VBA】シート上の複数のチェッ...
-
ExcelのVBAで数字と文字列をマ...
おすすめ情報