winforms、vb.netでは、colordialogのカスタムカラーボックスに表示される特定のカスタムカラーを定義できますか?colordialogに表示される特定のカスタムカラーを定義していますか?
3
A
答えて
4
要するに、はい。 MSDNはそれをカバーしますhere。問題はそれがColor
経由で行われていないことです - あなたはBGRセットとして値を扱う必要があります。つまり、各整数は00BBGGRRという色で構成されているので、青で16、青で8、そのまま"。
私のVBは吸うが、C#で、紫追加する:
Using dlg As ColorDialog = New ColorDialog
Dim purple As Color = Color.Purple
Dim i As Integer = (((purple.B << &H10) Or (purple.G << 8)) Or purple.R)
dlg.CustomColors = New Integer() { i }
dlg.ShowDialog
End Using
2
既存の例では、エラーが含まれています
using (ColorDialog dlg = new ColorDialog())
{
Color purple = Color.Purple;
int i = (purple.B << 16) | (purple.G << 8) | purple.R;
dlg.CustomColors = new[] { i };
dlg.ShowDialog();
}
リフレクターが、これはと類似していることを私に保証します。
purple.Bは整数ではないバイトなので、8または16ビットシフトすると値に何も作用しません。各バイトは、シフトする前に整数にキャストされる必要があります。このような何か(VB.NET):
Dim CurrentColor As Color = Color.Purple
Using dlg As ColorDialog = New ColorDialog
Dim colourBlue As Integer = CurrentColor.B
Dim colourGreen As Integer = CurrentColor.G
Dim colourRed As Integer = CurrentColor.R
Dim newCustomColour as Integer = colourBlue << 16 Or colourGreen << 8 Or colourRed
dlg.CustomColors = New Integer() { newCustomColour }
dlg.ShowDialog
End Using
4
あなたは以上1つのカスタムカラーを持つようにしたい場合は、あなたがこれを行うことができます:(ギャビーに基づく)
'Define custom colors
Dim cMyCustomColors(1) As Color
cMyCustomColors(0) = Color.FromArgb(0, 255, 255) 'aqua
cMyCustomColors(1) = Color.FromArgb(230, 104, 220) 'bright pink
'Convert colors to integers
Dim colorBlue As Integer
Dim colorGreen As Integer
Dim colorRed As Integer
Dim iMyCustomColor As Integer
Dim iMyCustomColors(cMyCustomColors.Length - 1) As Integer
For index = 0 To cMyCustomColors.Length - 1
'cast to integer
colorBlue = cMyCustomColors(index).B
colorGreen = cMyCustomColors(index).G
colorRed = cMyCustomColors(index).R
'shift the bits
iMyCustomColor = colorBlue << 16 Or colorGreen << 8 Or colorRed
iMyCustomColors(index) = iMyCustomColor
Next
ColorDialog1.CustomColors = iMyCustomColors
ColorDialog1.ShowDialog()
0
SIMPLFIED
の場合ターゲットカスタムカラーのARGBを知っていれば、
' Define custom colors
ColorDialog1.CustomColors = New Integer() {(255 << 16 Or 255 << 8 Or 0), _
(220 << 16 Or 104 << 8 Or 230), _
(255 << 16 Or 214 << 8 Or 177)}
ColorDialog1.ShowDialog()
'where colors are (arbg) 1: 0,255,255 [aqua]
' 2: 230,104,220 [bright pink]
' 3: 177,214,255 [whatever]
関連する問題
- 1. colordialogでカスタムカラー設定を変更したときの検出
- 2. リスト定義がサイト定義のサブサイトに表示されない
- 3. タイプが定義されている場所を特定する
- 4. jquery特定のテキストフィールドが入力されるまで特定のフォーム要素を非表示にしますか?
- 5. 特定のユーザーロールに対して特定のダッシュボードを既定で表示する
- 6. PHPクラスが定義されているNetBeansを表示
- 7. 私のjavascript配列に表示される特定されていない値
- 8. リピータの特定の列を表示して非表示にしますか?
- 9. 特定のユーザーにのみ表示されるリンクですか?
- 10. Javascript変数が未定義として表示される
- 11. content_forが定義されていない限り、部分表示?
- 12. 特定のサイズの特定の列を非表示にしますか?
- 13. FBが未定義のときに表示されます。
- 14. 指定されたiOS ipaファイルに定義されているNSStringを表示する方法
- 15. Delphi FMXがフォーカスを特定のコントロールに設定してカーソルが表示されるようにしました。
- 16. ファイル名が未定義のまま表示され続ける
- 17. Android ListVIew特定の行に設定された表示
- 18. 特定のタイプのghciでの型定義の表示
- 19. jQuery:特定の<select>オプションが選択されている場合、divを表示していますか?
- 20. Xml定義された図形が表示されない
- 21. C++:リンカーエラー:別のファイルで定義されている特定のクラスメンバーにのみ未定義の参照
- 22. "$が定義されていません"というエラーが表示されるのはなぜですか?
- 23. 「ブロックが定義されていません」というエラーが表示されるのはなぜですか?
- 24. 特定のユーザーに対して「ユーザーの追加」オプションが表示されない
- 25. 特定の行を表示/非表示にすると、1行おきに陰影が表示されます
- 26. 定義リスト()に定義用語(<dt>)を非表示(表示:なし;)できますか?
- 27. 特定のクラスのオブジェクトをNoneとして定義します。
- 28. 特定のキーを選択してからng-repeatを指定しないで特定の値を表示
- 29. Android AppWidgetが特定の電話機に表示されない
- 30. 背景画像が特定のページに表示されない
+1ビット単位の操作が可能です。私は本当にMSがこのことをより良く記録することを望む。 –