![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?5a7ff87)
プログラミング(?)が初めてなのでよく分からないのですが、
Visual Stadio2005のVisual Basicで
RED が &HFF000000+HScrollBar1.Value*&H10000
GREENが &HFF000000+HScrollBar2.Value*&H100
BLUE が &HFF000000+HScrollBar3.Value*&H1
PictureBox1.BackColor=Color.fromArgb()←この中に何を記述すれば
スクロールバーを動かして
この3色を混ぜ合わせることができるのでしょうか。
わかる方回答お願いいたします。
A 回答 (2件)
- 最新から表示
- 回答順に表示
![](http://oshiete.xgoo.jp/images/v2/common/profile/M/noimageicon_setting_12.png?5a7ff87)
No.2
- 回答日時:
Color.FromArgb の使い方をヘルプで調べれば 4つの方法を知ることができます。
調べてみましたか?で、ColorFromArgb(Int32, Int32, Int32) というオーバーロードを使用すれば赤緑青の 3つの値を指定して色を決定させられる事がわかります。
3つの Int32 (つまり VB で言えば Integer) は 8ビット カラー値 (つまり 0~255) を指定するってこともヘルプに載っています。
ということは質問者さんが書いている変な計算式は不要なわけです。(もちろん質問文には HScrollBar の Maximum プロパティをどのように設定しているのかが書かれていないので、場合によってはその計算式でもいけるのかもしれませんが)
私としては 3つの ScrollBar の ValueChanged イベントを 1つのイベント プロシージャに指定し、その中で
PictureBox1.BackColor = Color.FromArgb(HScrollBar1.Value, HScrollBar2.Value, HScrollBar3.Value)
と書きます。
しかしここで質問文とは関係の無い、ScrollBar の仕様が問題になります。
.Net Framework のスクロールバーの Maximum プロパティのヘルプには以下のように書かれています。
----
スクロール バーの値を、実行時にユーザーとのやり取りを通じて最大値にすることはできません。到達できる最大値は、 Maximum プロパティ値から LargeChange プロパティ値を引いて 1 を加えた値と同じです。最大値にはプログラムによってしか到達できません。
----
つまり Maximum プロパティを 255 に設定しても、マウスで操作をしても 255 まで持っていけないのです。
値を指定するためのコントロールなら TrackBar コントロールをお勧めします。
ScrollBar と同じように扱う事ができ、なおかつマウス操作で Maximum の値まで持っていくことができます。
PictureBox1.BackColor = Color.FromArgb(TrackBar1.Value, TrackBar2.Value, TrackBar3.Value)
No.1
- 回答日時:
HScrollBar1~3のレンジがわからないので正しいことはわかりませんが、各々0~255の値を持つとしておきましょう。
Color.FromArgbはARGB値からColor値を生成するメソッドで、パラメータによって何種類かあります。
(1)Color.FromArgb (Int32)
32bitのARGB値から生成
(2)Color.FromArgb (Int32, Color)
8bitのアルファ値と既存のColor値から生成
(3)Color.FromArgb (Int32, Int32, Int32)
各8bitのRGB値から生成
(4)Color.FromArgb (Int32, Int32, Int32, Int32)
各8bitのARGB値から生成
したがって、与えるべきパラメータは
(1)を用いる場合は
&HFF000000+HScrollBar1.Value*&H10000+HScrollBar2.Value*&H100+HScrollBar3.Value*&H1
(3)を用いる場合は
HScrollBar1.Value, HScrollBar2.Value, HScrollBar3.Value
(4)を用いる場合は
&HFF, HScrollBar1.Value, HScrollBar2.Value, HScrollBar3.Value
どれも得られる結果は同じですが
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- PHP PHPでユーザー情報を入力して簡易ログイン機能をつくってみたのですが 1 2023/05/29 08:51
- PHP PHPでCookieを使った訪問回数について 1 2023/05/28 14:10
- Visual Basic(VBA) C3とC4のセルに、Visual basicで実行した時入力した値をC3に表示させ、その後に、C3に 1 2023/07/14 09:43
- Visual Basic(VBA) 配列の勉強をしています。使用する変数の意味、検索条件の書き方が難しいです。 2 2022/09/15 14:06
- HTML・CSS htmltとcssのコードで 1 2022/11/26 13:37
- HTML・CSS ただいま勉強始めたての初心者です。フォームを縦並べにしたいです。 2 2022/11/20 17:18
- HTML・CSS cssの display: flex;で横並びにならずに困ってます 1 2022/12/04 13:18
- HTML・CSS 私の能力からして間違っていないような気がします。 4 2022/09/30 13:24
- HTML・CSS CSSが上手く反映されないみたいです 2 2022/11/21 16:19
- PHP php テーブルが作成できない 1 2022/11/17 23:41
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
テキストボックスのvalueとtext...
-
【C++/CLI.NET】コンボボックス...
-
VB.NETでコンボボックスの1行目...
-
値を返さないコード パス
-
PL/SQLでのTO_DATEの時間取得に...
-
Excel VBAのリストボックスの値...
-
VBA(自然数)
-
マクロ 特定のセル値のみクリ...
-
Excel VBA 複数選択したリスト...
-
VBA 違うシートにコピペしてソ...
-
VBでBtrieveファイルにアクセス...
-
TeraTerm inputboxについて
-
MaskEditBoxへ値の設定を行いたい
-
変数に代入してある数値を表示...
-
VB初心者。小数点以下の表示で...
-
プログラミング実行後に表示さ...
-
シーケンサで最小値を保持する
-
C# get set
-
ACCESS VBA 画像ファ...
-
GetAt・SetAtを用いてエディッ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
テキストボックスのvalueとtext...
-
ハッシュテーブル(連想配列)が...
-
Excel VBAのリストボックスの値...
-
マクロ 特定のセル値のみクリ...
-
PysimpleGUIでデータベースを作る
-
VB.NETでコンボボックスの1行目...
-
変数名の取得
-
power BI クエリエディター 〇...
-
VB初心者。小数点以下の表示で...
-
PL/SQLでのTO_DATEの時間取得に...
-
【C++/CLI.NET】コンボボックス...
-
値を返さないコード パス
-
Powershellのparamについて
-
Excel VBA 複数選択したリスト...
-
DataTableに対するLINQについて
-
ユーザーフォームのテキストボ...
-
C# get set
-
変数に代入してある数値を表示...
-
VBAでWEB上の入力項目に値をい...
-
VB.NETでアクティブなformを知...
おすすめ情報