2014-02-08 49 views
0

我嘗試將代碼從VB6遷移到VB.NET。VB.NET ColorTranslator.ToOle意外的結果

我想在VB.NET中獲得vbGreen的整數值。

在VB6 「vbGreen」 涉及到65280. 現在,當我做

ColorTranslator.ToOle(Color.Green) 

...返回32768

有誰看到我走到哪裏錯了?

謝謝!

回答

1

65280 == & H00FF00或256爲綠色
32768 == & H008000或128,用於綠色

和OLE顏色是BGR,從的System.Drawing.Color反向這是RGB。在這裏沒有任何區別。很清楚你做了什麼,忘了說,你正在使用Color.Green。這是不是顏色與vbGreen相同。您應該使用Color.Lime。請注意智能感知提示中如何顯示顏色的十六進制值。