0

C dllを呼び出すac#Windows.NetUIがあります。dllはデータセットに対していくつかの計算を行い、UIに渡す必要のある色を考え出します。

色はエキゾチックではなく、UIに渡される色は約10種類だけです(たとえば、赤、白、緑、マゼンタ、黄色など)。CとC#の両方で使用できる標準名のセットがあるので、コードを追加する必要がなくなりますか?

4

1 に答える 1

4

色の値は、コード内の整数です。たとえば、デザイナーまたは.NETSystem.Drawing.Colorタイプのようなタイプを使用する場合にのみ名前が付けられます。.NETとCの間で相互運用する場合、int以外に、両端で機能するタイプは使用できません。

カラー値はARGB形式でエンコードされ、アルファ、赤、緑、青にそれぞれ1バイトです。したがって、「赤」は値0xffff0000、「白」は0xffffffff、「緑」は0xff00ff00などです。うまくいけば、あなたはパターンを見るでしょう。int value = Color.Red.ToArgb();そうでない場合は、整数値を取得するために使用する小さなC#Winformsプログラムを作成することで、色の値を取得できます。デバッガーでも機能するため、クイックウォッチウィンドウに式を直接入力できます。

于 2012-10-13T13:44:07.407 に答える