VBレスキュー(花ちゃん)
VB2005用トップページへVBレスキュー(花ちゃん)のトップページVB6.0用のトップページ各掲示板

リンク元へ戻ります。 描画・画像関係のメニュー
1.Imageコントロールで画像を拡大・縮小・移動表示・印刷する
2.PictureBox コントロールで画像を拡大・縮小表示する
3.網掛け文字を表示及び印字
4.ピクチャーボックス上に円グラフを描画する
5.AVI(アニメーション)ファイルを表示する
6.ピクチャーボックスに表示・描画した画像・文字の保存及び消去方法
7.フォームの背景にグラデーションを描く(VBの標準の機能で)
8.上下左右の鏡像を得る(VBの標準の機能で)
9.ピクチャーを90度毎に回転させて表示(VBの機能で)
10.表示位置・印字位置(文字列)を揃える
11.画像ファイルをスクロール表示しながら連続読み込み
12.メモリDCを使っての画像表示(拡大・縮小・鏡像・180度回転)
13.図形の内部を塗りつぶす
14.
15.
16.
17.
18.
19.
20.その他、当サイト内に掲載の描画・画像に関するサンプル


7.フォームの背景にグラデーションを描く
1.フォームの背景にグラデーションを描く
2.
3.
4.
5. 
6. 

 下記プログラムコードに関する補足・注意事項 
動作確認:Windows Vista・Windows 7 (32bit) / VB6.0(SP6)
Option :[Option Explicit]
参照設定:追加なし
使用 API:
なし
その他 :
    :
このページのトップへ移動します。 1.フォームの背景にグラデーションを描く

Option Explicit   'SampleNo:053  2002.05.12   @ 2007.01.18

Private Function GetRed(colorVal As Long) As Integer
  GetRed = colorVal Mod 256
End Function

Private Function GetGreen(colorVal As Long) As Integer
  GetGreen = ((colorVal And &HFF00FF00) \ 256&)
End Function

Private Function GetBlue(colorVal As Long) As Integer
  GetBlue = (colorVal And &HFF0000) \ (256& * 256&)
End Function

Private Sub Form_Load()
  Form1.Move 0, 0, 6000, 5000
End Sub

Private Sub Form_Paint()
  Dim newColor As Long, ipixel    As Integer, PWidth  As Integer
  Dim redInc  As Single, greenInc  As Single, blueInc  As Single
  Dim color1  As Long, color2    As Long, lngheight  As Long
  Dim startRed As Integer, startGreen As Integer, startBlue As Integer
  Dim endRed  As Integer, endGreen  As Integer, endBlue  As Integer

  color1 = &HFF0000        'StartColor
  color2 = &HFFFFC0        'EndColor

  startRed = GetRed(color1):   endRed = GetRed(color2)
  startGreen = GetGreen(color1): endGreen = GetGreen(color2)
  startBlue = GetBlue(color1):  endBlue = GetBlue(color2)
  lngheight = Form1.Height
  PWidth = Form1.ScaleWidth
  If PWidth <= 0 Then Exit Sub    '最小化の場合
  redInc = (endRed - startRed) / PWidth
  greenInc = (endGreen - startGreen) / PWidth
  blueInc = (endBlue - startBlue) / PWidth

  For ipixel = 0 To PWidth - 1
    newColor = RGB(startRed + redInc * ipixel, startGreen _
        + greenInc * ipixel, startBlue + blueInc * ipixel)
    Line (ipixel, 0)-(ipixel, lngheight - 1), newColor
  Next
End Sub

  図1.上記実行結果
 drawing07_01

StartColorとEndColorを好きな色に変更して下さい。
VBの機能だけで表示していますので少し、表示に時間がかかるのが欠点ですが、最近のマシンは処理が早いのでストレスは感じないかも?

このページのトップへ移動します。 2.


このページのトップへ移動します。 3.


このページのトップへ移動します。 4.


このページのトップへ移動します。 5.


このページのトップへ移動します。 6.


このページのトップへ移動します。 検索キーワード及びサンプルコードの別名(機能名)
1.Line を使ってフォームの背景にグラデーションを描く




このページのトップへ移動します。