VB6.0用掲示板の過去のログ(No.1)−VBレスキュー(花ちゃん)
[記事リスト] [新規投稿] [新着記事] [ワード検索] [過去ログ] [管理用]

投稿日: 2004/06/02(Wed) 16:17
投稿者ken.1
Eメール
URL
タイトルRe^3: PictureBoxでズーム・スクロールする

'サイズの4500, 8000をベタ数字にしてかっこ悪いですが
'ピクチャーボックス2つ
'Vスクロール, Hスクロール を1つづつ

'画像のオリジナルサイズ
Dim lngOrgHeight As Long
Dim lngOrgWidth As Long

'スクロールバーで一度に進む距離
Dim pointHeight As Long
Dim pointWidth As Long

Private Sub Form_Load()
    Set orgPic.Picture = LoadPicture("*.jpg等")
    'オリジナルのサイズを格納 (orgPicはPictureBoxコントロール)
    'AutoSize = True, Visible = False
    lngOrgHeight = orgPic.ScaleHeight
    lngOrgWidth = orgPic.ScaleWidth
    'スクロールバーで一度に進む距離を設定
    pointHeight = lngOrgHeight / 20
    pointWidth = lngOrgWidth / 20

    '表示するピクチャーボックスの初期設定
    Set viewPic.Picture = LoadPicture("*.jpg等")
    viewPic.Top = 0
    viewPic.Left = 0
    viewPic.Height = 4500
    viewPic.Width = 8000
End Sub

'各スクロールバーの Minは1, Maxは20
Private Sub HScroll1_Change()
    viewPic.Left = pointWidth * (HScroll1.Value - 1)
    viewPic.Width = 8000 - pointWidth * (HScroll1.Value - 1)
End sub

Private Sub VScroll1_Change()
    viewPic.Top = pointHeight * (VScroll1.Value - 1)
    viewPic.Height = 4500 - pointHeight * (VScroll1.Value - 1)
End Sub

上記のコードでスクロール機能は実装できているかのように見せられると思っています。
ズームとの兼ね合いに苦戦していますが、根本的な作りに問題があるかと思ったのですがね


- 関連一覧ツリー (★ をクリックするとツリー全体を一括表示します)

- 返信フォーム (この記事に返信する場合は下記フォームから投稿して下さい)

- Web Forum -