QBColor関数って、色名が変ですよね。
7番はどう見てもグレーなのに「白」
15番は白なのに「明るい白」
どなたか色名の由来をご存知の方は
教えてください。

このQ&Aに関連する最新のQ&A

A 回答 (3件)

これは、パソコンの歴史の遺物のひとつですね。


「QBColor」とは「QuickBasic Color」の略のでして、
VBの原形となった(らしい)コンパイラ型BASICの色コードに由来します。
このQBが稼動していたころはWindowsなどないDOS時代で、パソコンの色数は8/16色程度でした。
8色はRGBの組み合わせで、これの明るい・暗いで16色。
その色がQBColorで使えるようになっているのです。
今となっては使われることも無い関数でしょうね。
    • good
    • 0
この回答へのお礼

私はVB初心者です。
いま読んでいる解説書によく出てくるので、
あまり使われていないものとは知りませんでした。
DOS時代はこれだけしか色がなかったのですね。
信じられません。
ありがとうございました。

お礼日時:2001/12/05 19:05

なるほど、QuickBasicの遺産なのね。

>No.1
こんな関数を使ったらだめですよ。
普通はvbBlack, vbWhiteといった定数やRGB関数を使います。
    • good
    • 0
この回答へのお礼

私はVB初心者で、参考書によく出てくるので、
あまり使われていないとは知りませんでした。
ありがとうございました。

お礼日時:2001/12/05 18:59

QBColor(7)


とすると数字が表示されます。RGBカラー値です。

わかりやすくすると
Right(String(8, "0") & hex(QBColor(7)),6)
を実行してみてください。
C0C0C0
と表示されます。
C0→&HC0=192
です。要するに
赤192
緑192
青192
の要素を持った色となります。
同様に15を指定したとき
FFFFFF
となります。
これはそれぞれ255の要素を持っています。
つまり各要素を高めると白に近づきます。
8のグレーを指定すると、7の白より各要素値が低いことがわかると思います。



さて本題の由来ですが・・・なぜ
7=C0C0C0
15=FFFFFF
なのかは知りません・・・

しかし、色が乏しい昔のPC時代の使用できた色を、単にID化したものだと思いましたが・・・記憶があいまいです。。。
    • good
    • 0
この回答へのお礼

私はVB初心者です。
いま読んでいる解説書によく出てくるので、
あまり使われていないものとは
知りませんでした。
ありがとうございました。

お礼日時:2001/12/05 19:02

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Qマクロ初心者です。 val関数とLeft関数とFormat関数を使ったコードで質問があります。

マクロ初心者です。
val関数とLeft関数とFormat関数を使ったコードで質問があります。


If val(Left(Format(Cells(i,Num).Value _
,”00000”,2)) > 1 Then
エラー処理

とうコードがあります。

Cells(i,Num)にある数値の上2桁が00もしくは01は対象で、それ以外はエラー処理、
というコードです。
現在勤務先で既にうごかしているマクロなので、修正の必要はないです。

空いた時間を利用してマクロを学んでいるのですが
なぜFormat関数が必要なのかが分からず困っています。Format関数って曜日とか日付とか、セルの書式設定の表示形式のユーザー定義に出てくるような…和暦変換したりする時に使うイメージなのです。
valも抜いてLeft関数だけじゃ問題あるのでしょうか?Leftだけでは数値としてかえってこないからということでしょうか?

Aベストアンサー

例えばformatがない場合
Cells(i,Num)の値が
1の場合、上2桁を出すと1
12の場合、上2桁を出すと12
123の場合、上2桁を出すと12
1234の場合、上2桁を出すと12
12345の場合、上2桁を出すと12
formatがある場合
1の場合、上2桁を出すと00
12の場合、上2桁を出すと00
123の場合、上2桁を出すと00
1234の場合、上2桁を出すと01
12345の場合、上2桁を出すと12
formatで文字列になっているのでvalで数値にしている。

Qマクロ コンパイルがグレーバック

excel2003のマクロ付きファイルをもらいコンパイルしようとしたところ
はじめからグレーバックになります。
なにか設定されているのでしょうか

パスワード保護もされていません・

Aベストアンサー

> なぜか、開いた瞬間からです。
それは
> excel2003のマクロ付きファイルをもらい
「先方がコンパイルした」excel2003のマクロ付きファイルをもらったのでしょう。
VBAを編集してみれば、グレーバックが解除されると思います。
(コードを編集し元に戻しても、プロジェクトとしては編集されたと解釈するはず)

Qグレースケール表示するツールを探しています。

400dpi(白黒)で取り込んだ画像ファイルを100dpiに縮小して表示しようと思います。
この際に文字がつぶれるなどの画像劣化を防ぎ、きれいに表示するために、グレースケール表示に変換するツールを探しております。(DLLで提供されているもを探しております。)

現在 LEADTOOLS(GrapeCity)、ImageGearなどを調べてみたのですが、金額が高くて手が出せません。
このような処理を行うものを基本的に安いものはないのでしょうか?

お気づきの点がありましたら、ご教授のほうよろしくお願いいたします。

Aベストアンサー

VBカテゴリで、DLLもOKということは自作も可能ということですね。
ワタシも欲しくて下記Webにあるサンプルコードを参考にVBで自作しました。
「vb Freaks」
http://www001.upp.so-net.ne.jp/shige-3peace/VBFreaks.htm

参考URL:http://www001.upp.so-net.ne.jp/shige-3peace/VBFreaks.htm

QVB.NETのリストビューの選択行(ブルー/グレー反転)を発生防ぐ方法

VB.NETのリストビューの選択行(ブルー/グレー反転)を発生防ぐ方法

いつも大変お世話になっています。
VB.NETでの リストビューの選択行(ブルー/グレー反転)を発生させない方法について
御存知の方がおられましたら、ご享受ください。宜しくお願いします。

Aベストアンサー

SelectedIndexChanged イベントで選択解除すれば、人間の目には
反転してないように見えると思います。

…実際は反転した後に解除でしょうが。

Qこんばんわ、どなたか教えてください

こんばんわ、どなたか教えてください

VB2008proとSQLServer2008を使用してマスタ観覧システムを作成しています

テーブルの内容をVBのアプリケーション上で表示したいのですがうまく接続ができません
サーバーエクスプローラー設定後に新しいデータソースの追加までは行いサーバーの内容は確認できるところまではできましたがプログラムで接続する部分がわかりません

どなたか教えていただけると助かります
よろしくお願いします

Aベストアンサー

データコントロールでSQLSERVERに接続する
で探してみて下さい。

ほか
VB ODBC SQLSERVER
等の関連キーワードで検索すると事例、解説があったりしますから、そのシステムに合う設定にします。。


このカテゴリの人気Q&Aランキング

おすすめ情報