• ベストアンサー

VB6.0日付の色を変更できるカレンダーはありますか?

VB6SP6を利用しています。 MonthViewコントロール、MicrosoftCalendarコントロール と試してみたのですが、いろいろとヘルプを見てみたのですが、 どうやらこの二つのコントロールには、 カレンダー全体の背景やフォントの色を変更することはできても、 特定の日時のフォントや背景の色を変更することはできないようです。 カレンダーを表示して、祭日の部分のフォント色を変更したいのですが、 こういったことを実現するにはVB付属のコントロールでは不可能なのでしょうか? 不可能であればどういった解決手段が考えられるのでしょうか? 例えばカレンダーを自作するとなると、 一応うるう年の計算やツェラーの公式は知っていて、変数の中にならカレンダーを 表現できますが、いざフォーム上に表現とすると、 Labelコントロールを31個用意して強引にやることしか思いつきません。 今日は何度もここで質問してしまい本当に恐縮です。 朝からずっとVBの練習をしているのですが、わからないことが次から次へと 出てきます。

質問者が選んだベストアンサー

  • ベストアンサー
  • takasebou
  • ベストアンサー率42% (61/144)
回答No.2

それらのことMS純正のコントロールでは無理ですね。 実際の開発現場でやるとするとサードパーティのコントロール(例えばGrapeCity社のInputMan内にあるimCalendarコントロール等)を使用するか、自分でVCなどを使ってOCXを作成するか……ですが。 勉強中との事ですのでそれは無理ですよね。 そうすると、ノーマルのVBだけで実現させるなら、おっしゃる通りLableやTextBox等を使用して疑似的に作るか、Imageコントロール中にグラフィックとして書き出すしかないでしょう。 まぁImageコントロール中に書き出すのは、けっこう大変だし、日付を選択したりはできないので、LabelやTextbox等を使うのが現実的だと思われます。 コントロール配列にして、Labelを7×5列並べるのが現実的かなと思います。 なお日付を扱うなら、うるう年の計算などするのも面倒くさいので、Date変数を使うのが楽ちんです。Date,Now,Time,DateAdd,DateDiffといった関数を使えば、簡単に日付計算が出来ます。

tochanx
質問者

お礼

回答どうもありがとうございました。 OCXについてもそのうち勉強したいなとは思っています。 (というかいいかげん.netに移るべきなのでしょうが) 徹夜して何とかLabelコントロールを並べて擬似カレンダーぽいものができました。 途中自分の脳みその悪さに壁に頭をぶつけるほどの大苦戦でした。 できたものを見てみるとぜんぜん複雑なことをしているわけではないのに。 おかげでツェラーの公式暗記しちゃいました。 提示してくださった関数群でももう一度組みなおしてみようと思います。

その他の回答 (1)

  • fortranxp
  • ベストアンサー率26% (181/684)
回答No.1

>Labelコントロールを31個用意して強引にやることし>か思いつきません。 私もそう思います。 Labelコントロールは無論コントロール配列ですね。 7X5=35個必要になりそう。

tochanx
質問者

お礼

コントロール配列の概念を理解するのにちょっと手間取りましたが、なんとか実現できました。 これから日付の色変更の実装に入ります。 回答ありがとうございました。

関連するQ&A

  • Googleカレンダーの日付の色

    Googleカレンダーの背景に白黒の写真を設定したところ、日付の色が見えにくくなってしまいました。 日付の色を変更して見やすくしたいと思います。 予定の文字色の変更はできるのですがカレンダーの日付の文字色の変え方が分かりません。 どなたか教えて下さい。 お願いします。

  • アクセスのカレンダーコントロールの色について。

    アクセスのカレンダーコントロール(アクティブコントロールの)の色は一部変更することはできないのでしょうか?アクセス2003なのですが、できれば日曜日は赤、土曜日は青で表示したいのですが。。。

  • エクセルで月間カレンダー

    エクセルで月間カレンダー(予定表)を作っています。 年・月を入力する事で自動で日にちに合った曜日欄の変更が出来て うるう年と大の月と小の月も判別する事までを何とか出来ました。 最後の難関ですが 祝日と祭日を自動で行事欄に表示させる事って可能でしょうか?

  • チャートコントロール(MSChart)のフォント設定

    VB6.0でチャートコントロール(MSChart)を使いグラフを描画する事が出来ました。グラフを格好良くしようと思い背景を暗めの色にした所、グラフの文字が見えにくくなったため、フォントの変更を試みました。 縦横スケールのフォントは何とか変更することが出来たのですが、凡例のフォント設定が見つかりません。 ご存知の方いらっしゃいましたらご教授頂けないでしょうか。

  • VB6、コマンドボタンの背景色を変更するには?

    コマンドボタンのBackColorプロパティをいじってもコマンドボタンのCaptionの背景の色が変更されません。 ラベルコントロールとかだと同じプロパティをいじると色が変わるのですが… 色を変えるにはどうすればよいでしょうか?

  • ListViewのカラムの色の変更

    色々と探したり試したりしたのですが、BCBのリストビューの カラムの背景色変更ができません。 ListViewのCustomDrawItemでCanvasを使用すると リストの項目の背景色は変更できるのですが、カラムの色は変更できないのでしょうか? http://www.mitene.or.jp/~sugisita/vb6_cmctl.html 上記ページで”リストビューのカラムヘッダの色変更”で できるような事をBCBで行いたいのですが… アドバイスお願いいたします。

  • VB.Netの勉強をしています。

    VB.Netの勉強をしています。 表現が正しくないかもしれませんが VB6.0では、RaiseEventで発生させたイベントをWithEventsで指定した変数に発生させる事が 出来たと思います。 VB.Netで同じことをいたいのですが、どのように実現したらよいかわかりません。 どなたか、教えていただけませんでしょうか。 具体的には  開いているフォーム、ロードしたコントロールすべてに、イベントを通して、更新通知を  知らせてあげたいのですが。  プロパティーを使用する方法等も考えましたが、イベントが綺麗かな~と思いまして。。。

  • VB6での環境変数変更方法について

    VB6で開発しておりますが、環境変数を変更してすぐに反映させる方法はありますか?(OS は WinXP pro です) レジストリの「HKLM/SYSTEM/CurrentControlSet/Control/Session Manager/Environment」のキーを更新してもPCを再起動しないと反映されないようで困っています。 何か方法はあるのでしょうか?

  • 左側のバナーの背景色を、任意の色に変更したいです。

    再度の質問となります。 ご指南いただければ幸いです。 http://web-zen.sakura.ne.jp/index.html 現在、無料cssを使用してホームページの作成を命令(笑)されています。 先の質問で左側のバナーの高さを調節したいと質問しましたが、 それに加えて バナーそのものの背景色を薄い青色に 変更したいです。 cssファイルをいろいろいじってみましたが、 背景の色を変更することはできませんでした。 何か画像ファイルを、希望の色に差し替える必要があるのでしょうか? ※バナーの背景を薄い青色の背景に変更すると、現在書いてある文字が白色となり 大変見づらくなってしまうので、できればこちらの文字色を黒色に変更 する方法もご指南いただければ幸いです。 駄文失礼しましたm(_ _)m (できれければ、<font color="black"></font>で対応予定です。)

    • ベストアンサー
    • HTML
  • 変更処理

    〔チェンジ〕というようなボタンを押すことで同時に背景色・フォント色 を変更したいのですがどうすればいいのか教えてください。 ちなみに、背景は黒。フォントは白。に同時変換したいです。 ※ひとつずつかえるのではなく、あくまでボタンを押すだけで 同時に変更したいのですが・・・できるのでしょうか?

専門家に質問してみよう