|
▼たけ さん:
>▼taka さん:
>>おはようございます。
>>comboboxの値によって、下記のコードの様に指定したlabelのbackcolorを変更したいのですが、うまくいきません・・・・。
>>例えば、7を選択し、label23.65の色は変わるのですが、次に10を選択すると、7で選択して変わったlabelの色はそのまま残り、10で選択したlabelの色がプラスされてしまいます。
>>又、下記コードに無い値を選択した場合は、labelの色は変更させたくないのですが・・・。
>>よろしくお願い致します。
>>
>>
>>If ComboBox1 = 7 Then
>> Label23.BackColor = &HC0C0FF
>> Label65.BackColor = &HC0C0FF
>> ElseIf ComboBox1 = 9 Then
>> Label23.BackColor = &HC0C0FF
>> Label65.BackColor = &HC0C0FF
>> ElseIf ComboBox1 = 10 Then
>> Label9.BackColor = &HC0C0FF
>> Label51.BackColor = &HC0C0FF
>> ElseIf ComboBox1 = 11 Then
>> Label6.BackColor = &HC0C0FF
>> Label48.BackColor = &HC0C0FF
>> Label26.BackColor = &HC0C0FF
>> Label68.BackColor = &HC0C0FF
>> ElseIf ComboBox1 = 1 Then
>> Label2.BackColor = &HC0C0FF
>> Label44.BackColor = &HC0C0FF
>> Label9.BackColor = &HC0C0FF
>> Label51.BackColor = &HC0C0FF
>> ElseIf ComboBox1 = 2 Then
>> Label16.BackColor = &HC0C0FF
>> Label58.BackColor = &HC0C0FF
>> ElseIf ComboBox1 = 3 Then
>> Label24.BackColor = &HC0C0FF
>> Label66.BackColor = &HC0C0FF
>> End If
>
>どのタイミングで、提示されたコードが動くのかは分かりませんが、
>comboboxの値で各ラベルの背景色を変更しようとしてるんですよね。
>
>combobox1の値が「7」だったら、label23とlabel65の背景色を変更してますよね。
>ということは、combobox1が「7」以外であれば、label23とlabel65の背景色は変更しない。つまり、変更されていたら元の色に戻す。
>という処理が必要になりますよね。
>その処理が抜けているから、背景色が変更されたままになっているだけだと思います。
>
>また、「comboboxの値」と自分で書かれているのですから、ComboBox1.Valueとちゃんと書いたほうが分かりやすいと思いませんか?
>ComboBoxオブジェクトには複数のプロパティがあり、Valueプロパティもその一つです。
>プロパティを省略した場合、Valueプロパティと自動的に判断してくれるみたいですから、問題なく動くのでしょうけど、他人に見せるときはできるだけ親切なコードのほうがいいですよね。
ありがとうございました。
変更されていたら元に戻す場合のコードがよく分からないのですが・・・。
|
|