PictureBoxを二重貼りしてスクロールするには

解決


やおきな  2005-02-27 01:42:06  No: 119960

PictureBoxを二重貼りしてスクロールする方法が

「フォームにスクロールバーをつけるには?」の回答
http://madia.world.coocan.jp/cgi-bin/VBBBS2/wwwlng.cgi?print+200410/04100027.txt

にあるのですが、PictureBoxを二重貼りにする方法が分かりません。
どなたか具体的な方法を教えていただけないでしょうか。


さるべーじ  2005-02-27 02:10:45  No: 119961

1つ目。
Formの中にPictureBoxを大きめに配置します。
2つ目。
1つ目で配置したPictureBoxをFormのように考え、その中にPictureBoxを配置します。

確認。
2つ目のPictureBoxを1つ目からはみ出すような位置まで移動させてみて、はみ出した部分が隠れるようであれば成功。
ほんとにはみ出した場合は、PictureBoxではなくFormに配置されてしまっているので2つ目のPictureBoxを削除してやり直し。

となります。

VB.NETならとりあえず配置した後で1つ目の中に移動させることもできますが、VB6のお話ですよね?であれば、配置時の一発勝負です。


ガッ  2005-02-27 02:26:18  No: 119962

VB6ならコピペで出来た悪寒・・


Say  2005-02-27 02:35:15  No: 119963

>ほんとにはみ出した場合は、PictureBoxではなくFormに配置されてしまっているので2つ目のPictureBoxを削除してやり直し。
>VB6のお話ですよね?であれば、配置時の一発勝負です。
いや、そんなにシビアな話では・・・
Form上にPicture1,Picture2を配置し、
Picture2を選択して[Ctrl+X]を押し(Picture2が消える)、
Picture1を選択して[Ctrl+V]を押せば
Picture1の中にPicture2が配置されます。

上記操作が面倒ならForm上への配置だけしておいて、
Form_Loadあたりでコードでコンテナをセットしても可。

Set Picture2.Container = Picture1

「Form上への配置」もコード化できますが、別の話になるので割愛。


さるべーじ  2005-02-27 02:39:15  No: 119964

> VB6ならコピペで出来た悪寒・・
> いや、そんなにシビアな話では・・・

あ、そぅか。その手もありましたね。
今まで律儀に一発貼付を繰り返していた私…(T−T)


やおきな  2005-02-27 03:28:56  No: 119965

すみません  VB.NETです。
VB6と同じではないですよね。
よろしくお願いします。


さるべーじ  2005-02-27 04:13:38  No: 119966

> すみません  VB.NETです。

いたたたた(T−T)

http://www.microsoft.com/japan/msdn/library/ja/vbcon/html/vxconchangestopictureboxcontrolinvisualbasicnet.asp

「Visual Basic 6.0 の PictureBox コントロールはコンテナ コントロールでしたが、Visual Basic .NET の PictureBox コントロールはコンテナ コントロールではありません。」

といぅことですので、外側のPictureBoxをPanelに読み替えればOKではないでしょうか。

# 私自身はPanelを使っていたので…VB.NETでPictureBoxがコンテナにならないことを知りませんでしたよorz


やおきな  2005-03-01 04:48:56  No: 119967

さるべーじ さん、ありがとう。

パネルできれいにスクロールされるのを確認しました。
PictureBoxの二重貼りより分かり易くなったのでは。
これできれいなプログラムが作れそうです。


※返信する前に利用規約をご確認ください。




  


  このエントリーをはてなブックマークに追加