DOBON.NET DOBON.NETプログラミング掲示板過去ログ

Enabled=FALSEの時の文字色

環境/言語:[Windows2000/VB.NET/NET Frameworkのバージョン1.1]
分類:[.NET]

初めまして。
コントロールのEnabledをFALSEにしたとき、文字の色がグレーになってしまいますが、これをもとの色のままにしておくことは出来ないのでしょうか?
よろしくお願いします。
2004/02/10(Tue) 13:39:47 編集(投稿者)

■No2439に返信(あびこさんの記事)
> 初めまして。
> コントロールのEnabledをFALSEにしたとき、文字の色がグレーになってしまいますが、これをもとの色のままにしておくことは出来ないのでしょうか?
> よろしくお願いします。

Enabledプロパティの代わりにReadOnlyプロパティをTRUEにするのはどうでしょう。
ただし使えるコントロールは限られ、テキストボックス等は文字列の選択・コピー等ができてしまいますが。
返信ありがとうございます。

> Enabledプロパティの代わりにReadOnlyプロパティをTRUEにするのはどうでしょう。
> ただし使えるコントロールは限られ、テキストボックス等は文字列の選択・コピー等ができてしまいますが。

今回は、カーソルもあたらないようにしたいので、ReadOnlyやLockedだと、イメージする動きにならないんです・・・。
あと、今まではテキストボックスは使っていなかったのですが、テキストボックスだと、背景色も変わってしまうのですね・・・。

Enabled=Falseの場合の色は、どうにもならないのでしょうか・・・。
■No2441に返信(あびこさんの記事)
> 返信ありがとうございます。
>
>>Enabledプロパティの代わりにReadOnlyプロパティをTRUEにするのはどうでしょう。
>>ただし使えるコントロールは限られ、テキストボックス等は文字列の選択・コピー等ができてしまいますが。
>
> 今回は、カーソルもあたらないようにしたいので、ReadOnlyやLockedだと、イメージする動きにならないんです・・・。
> あと、今まではテキストボックスは使っていなかったのですが、テキストボックスだと、背景色も変わってしまうのですね・・・。
>
> Enabled=Falseの場合の色は、どうにもならないのでしょうか・・・。
>

こちらでもパネル上にコントロールを配置して、パネルのEnabledをFALSEにしたりしてみましたが
どうもうまくいきませんでした…。
お力になれなくてごめんなさい。
■No2443に返信(琴さんの記事)
>
> こちらでもパネル上にコントロールを配置して、パネルのEnabledをFALSEにしたりしてみましたが
> どうもうまくいきませんでした…。
> お力になれなくてごめんなさい。

試していただきありがとうございます!
ネットで検索すると、同様の質問は多いのですが、全て、VB6.0以前で、その場合は、上記の方法で簡単にできるようですが・・・。

VB.NETでは、方法がないのでしょうか・・・
■No2444に返信(あびこさんの記事)
> コントロールのEnabledをFALSEにしたとき、文字の色がグレーになってしまいますが、これをもとの色のままにしておくことは出来ないのでしょうか?
> よろしくお願いします。

オーナードローできるコントロールであれば、オーナードローにより何とかするぐらいしか方法がないかもしれませんね。
■No2461に返信(管理人さんの記事)
> オーナードローできるコントロールであれば、オーナードローにより何とかするぐらいしか方法がないかもしれませんね。

返信ありがとうございます。
オーナードローですか・・・。試してみます。
VB6.0の時までのような簡単な解決方法はやはり、無いのですね。
ないということがわかったのは、良かったです。
あきらめも肝心ということで、仕様の変更も含め、違う考え方でやってみます。
ありがとうございました。
解決済み!

DOBON.NET | プログラミング道 | プログラミング掲示板