
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#
-
FlexGridで文字色を変更。
Visual Basic(VBA)
-
-
4
CloseとDisposeの違い
Visual Basic(VBA)
-
5
FlexGridの一部のみ表示を更新したいのです。
Visual Basic(VBA)
-
6
FlexGridで複数選択したセル、行、列を取得
Visual Basic(VBA)
-
7
FORMが開いているかどうかの確認方法
Visual Basic(VBA)
-
8
MSFlexGridのデータ表示位置の設定
Visual Basic(VBA)
-
9
vb6のVSFlexGridで選択行、列の値を取得し構造体に入れたい
Visual Basic(VBA)
-
10
VB.NETで DataRow()を利用して、値からコードを取得したい。
Visual Basic(VBA)
-
11
VB6.0-整数と余りを求める
Visual Basic(VBA)
-
12
VB.NET2005 TextBox 高さ(Height) 変更
Visual Basic(VBA)
-
13
VB.netでメソッドからコントロールを取得
Visual Basic(VBA)
-
14
VB6のMsFlexGridコントロールについて
Visual Basic(VBA)
-
15
CSVファイルの中で、「 , 」カンマを使いたい
その他(コンピューター・テクノロジー)
-
16
DATE型変数を初期化する方法
Visual Basic(VBA)
-
17
VB.NETでのイベントの途中終了
Visual Basic(VBA)
-
18
有無、要否、賛否、是非、可否、当否…これらの言葉について
その他(教育・科学・学問)
-
19
クリスタルレポート(8.5)の書式設定
Visual Basic(VBA)
-
20
ウォッチ式の文字数制限について
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ExcelVBAを使って、値...
-
Excelで指定した日付から過去の...
-
エクセルvbaで、別シートの最下...
-
i=cells(Rows.Count, 1)とi=cel...
-
特定のセルが空白だったら、そ...
-
VBAでセル同士を比較して色付け
-
vba 隣のセルに値がある行だけ...
-
特定の文字を条件に行挿入とそ...
-
Application.Matchで特定行の検索
-
任意フォルダから画像をすべて...
-
VBA実行後に元のセルに戻りたい
-
【Excel VBA】指定行以降をクリ...
-
VBAでセルをクリックする回...
-
【VBA】シート上の複数のチェッ...
-
連想配列を配列に格納したいで...
-
リアルタイムにフィルタをかけ...
-
エクセルVBAで結合セルの真ん中...
-
Excel VBAで、 ヘッダーへのセ...
-
連続する複数のセル値がすべて0...
-
DataGridViewの各セル幅を自由...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ExcelVBAを使って、値...
-
特定のセルが空白だったら、そ...
-
特定行の色を変えたい(FlexGrid)
-
i=cells(Rows.Count, 1)とi=cel...
-
Excelで指定した日付から過去の...
-
エクセルvbaで、別シートの最下...
-
VBA実行後に元のセルに戻りたい
-
Application.Matchで特定行の検索
-
”戻り値”が変化したときに、マ...
-
VBAでセルをクリックする回...
-
任意フォルダから画像をすべて...
-
Excel VBAで、 ヘッダーへのセ...
-
TODAY()で設定したセルの日付...
-
【Excel VBA】指定行以降をクリ...
-
Excel vbaで特定の文字以外が入...
-
ExcelのVBAで数字と文字列をマ...
-
Excel VBA、 別ブックの最終行...
-
DataGridViewの各セル幅を自由...
-
VBA ユーザーフォーム ボタンク...
-
連続する複数のセル値がすべて0...
おすすめ情報