2016年12月10日

VB.netやC#で同じ色かどうか調べる

VB.netやC#で同じ色かどうか調べる場合、Color構造体のARGBが一致していても
Array.IndexOf(colorArray, pixelColor) が -1 を返すことがあります。
これは、Colorを名前で定義している場合に発生するようで、
名前で作ったColorとFromArgbで作ったColorは別物らしいです。

つまり、
Dim BlackColorFromName As Color = Color.Black

Dim BlackColorFromArgb As Color = Color.FromArgb(255, 0, 0, 0)

Debug.Print(If(BlackColorFromName = BlackColorFromArgb, "一致", "不一致"))
とすると、不一致になります。

よって、下記のような関数を作って回避することにしました。


なんだかなぁ。
posted by MON at 00:00| Comment(0) | TrackBack(0) | 日記 | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント: [必須入力]

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。

この記事へのトラックバック
【今是昨非】http://nomulabo.com/