tagCANDY CGI VBレスキュー(花ちゃん)の Visual Basic 6.0用 掲示板 [ツリー表示へ]   [Home]
一括表示(VB6.0)
タイトルピクチャーボックスの表示位置
記事No13562
投稿日: 2009/04/03(Fri) 11:01
投稿者16万
VB6.0のSP6を使用しております。
ピクチャーボックスの 
 フォーム上のピクチャーボックスにjpgファイルを表示させる際、通AutoSize = True にしている場合、常に画像は左上に寄せて配置になるんですが、この画像を中央に配置、もしくは所定の座標値から描画するということはできないのでしょうか?

新しいバージョン(VB2008)ではSizeMode というプロパティで中央に配置はできるみたいですが、6.0では不可能なのでしょうか?

よろしくお願い致します。

[ツリー表示へ]
タイトルRe: ピクチャーボックスの表示位置
記事No13566
投稿日: 2009/04/04(Sat) 00:01
投稿者花ちゃん
> VB6.0のSP6を使用しております。
> ピクチャーボックスの 
>  フォーム上のピクチャーボックスにjpgファイルを表示させる際、通AutoSize = True にしている場合、常に画像は左上に寄せて配置になるんですが、この画像を中央に配置、もしくは所定の座標値から描画するということはできないのでしょうか?

たいていの事はできますが、画像を何の中央に表示したいのでしょうか?
1.Form を画面の中央に配置したい。
2.ピクチャーボックスをForm の中央に配置したい。
3.画像をピクチャーボックスの中央に表示したい。
4.上記以外の位置に表示したい。
5.画像をForm の中央に表示したい。

いずれにしても、位置を中央になるように計算して表示すればいいだけではないですか?。

Private Sub Form_Load()
   Dim Pic As Picture
   Dim Pw  As Long
   Dim Ph  As Long
   Dim Sw  As Long
   Dim Sh  As Long
   Set Pic = LoadPicture("c:\test.jpg")
   Sw = Me.ScaleWidth \ 2
   Sh = Me.ScaleHeight \ 2
   Pw = CLng(Me.ScaleX(Pic.Width, 8, vbTwips)) \ 2
   Ph = CLng(Me.ScaleY(Pic.Height, 8, vbTwips)) \ 2
   Me.AutoRedraw = True
   Me.PaintPicture Pic, Sw - Pw, Sh - Ph
End Sub

[ツリー表示へ]